
<!DOCTYPE html>
<html>
<head>

<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="chrome=1" />

<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />

<title>evaluate_scores slides</title>

<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>

<!-- General and theme style sheets -->
<link rel="stylesheet" href="reveal.js/css/reveal.css">
<link rel="stylesheet" href="reveal.js/css/theme/simple.css" id="theme">

<!-- If the query includes 'print-pdf', include the PDF print sheet -->
<script>
if( window.location.search.match( /print-pdf/gi ) ) {
        var link = document.createElement( 'link' );
        link.rel = 'stylesheet';
        link.type = 'text/css';
        link.href = 'reveal.js/css/print/pdf.css';
        document.getElementsByTagName( 'head' )[0].appendChild( link );
}

</script>

<!--[if lt IE 9]>
<script src="reveal.js/lib/js/html5shiv.js"></script>
<![endif]-->

<!-- Loading the mathjax macro -->
<!-- Load mathjax -->
    <script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML"></script>
    <!-- MathJax configuration -->
    <script type="text/x-mathjax-config">
    MathJax.Hub.Config({
        tex2jax: {
            inlineMath: [ ['$','$'], ["\\(","\\)"] ],
            displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
            processEscapes: true,
            processEnvironments: true
        },
        // Center justify equations in code and markdown cells. Elsewhere
        // we use CSS to left justify single line equations in code cells.
        displayAlign: 'center',
        "HTML-CSS": {
            styles: {'.MathJax_Display': {"margin": 0}},
            linebreaks: { automatic: true }
        }
    });
    </script>
    <!-- End of mathjax configuration -->

<!-- Get Font-awesome from cdn -->
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.css">

<style type="text/css">
    /*!
*
* Twitter Bootstrap
*
*/
/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box;
  height: 0;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
@font-face {
  font-family: 'Glyphicons Halflings';
  src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot');
  src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
  content: "\002a";
}
.glyphicon-plus:before {
  content: "\002b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac";
}
.glyphicon-minus:before {
  content: "\2212";
}
.glyphicon-cloud:before {
  content: "\2601";
}
.glyphicon-envelope:before {
  content: "\2709";
}
.glyphicon-pencil:before {
  content: "\270f";
}
.glyphicon-glass:before {
  content: "\e001";
}
.glyphicon-music:before {
  content: "\e002";
}
.glyphicon-search:before {
  content: "\e003";
}
.glyphicon-heart:before {
  content: "\e005";
}
.glyphicon-star:before {
  content: "\e006";
}
.glyphicon-star-empty:before {
  content: "\e007";
}
.glyphicon-user:before {
  content: "\e008";
}
.glyphicon-film:before {
  content: "\e009";
}
.glyphicon-th-large:before {
  content: "\e010";
}
.glyphicon-th:before {
  content: "\e011";
}
.glyphicon-th-list:before {
  content: "\e012";
}
.glyphicon-ok:before {
  content: "\e013";
}
.glyphicon-remove:before {
  content: "\e014";
}
.glyphicon-zoom-in:before {
  content: "\e015";
}
.glyphicon-zoom-out:before {
  content: "\e016";
}
.glyphicon-off:before {
  content: "\e017";
}
.glyphicon-signal:before {
  content: "\e018";
}
.glyphicon-cog:before {
  content: "\e019";
}
.glyphicon-trash:before {
  content: "\e020";
}
.glyphicon-home:before {
  content: "\e021";
}
.glyphicon-file:before {
  content: "\e022";
}
.glyphicon-time:before {
  content: "\e023";
}
.glyphicon-road:before {
  content: "\e024";
}
.glyphicon-download-alt:before {
  content: "\e025";
}
.glyphicon-download:before {
  content: "\e026";
}
.glyphicon-upload:before {
  content: "\e027";
}
.glyphicon-inbox:before {
  content: "\e028";
}
.glyphicon-play-circle:before {
  content: "\e029";
}
.glyphicon-repeat:before {
  content: "\e030";
}
.glyphicon-refresh:before {
  content: "\e031";
}
.glyphicon-list-alt:before {
  content: "\e032";
}
.glyphicon-lock:before {
  content: "\e033";
}
.glyphicon-flag:before {
  content: "\e034";
}
.glyphicon-headphones:before {
  content: "\e035";
}
.glyphicon-volume-off:before {
  content: "\e036";
}
.glyphicon-volume-down:before {
  content: "\e037";
}
.glyphicon-volume-up:before {
  content: "\e038";
}
.glyphicon-qrcode:before {
  content: "\e039";
}
.glyphicon-barcode:before {
  content: "\e040";
}
.glyphicon-tag:before {
  content: "\e041";
}
.glyphicon-tags:before {
  content: "\e042";
}
.glyphicon-book:before {
  content: "\e043";
}
.glyphicon-bookmark:before {
  content: "\e044";
}
.glyphicon-print:before {
  content: "\e045";
}
.glyphicon-camera:before {
  content: "\e046";
}
.glyphicon-font:before {
  content: "\e047";
}
.glyphicon-bold:before {
  content: "\e048";
}
.glyphicon-italic:before {
  content: "\e049";
}
.glyphicon-text-height:before {
  content: "\e050";
}
.glyphicon-text-width:before {
  content: "\e051";
}
.glyphicon-align-left:before {
  content: "\e052";
}
.glyphicon-align-center:before {
  content: "\e053";
}
.glyphicon-align-right:before {
  content: "\e054";
}
.glyphicon-align-justify:before {
  content: "\e055";
}
.glyphicon-list:before {
  content: "\e056";
}
.glyphicon-indent-left:before {
  content: "\e057";
}
.glyphicon-indent-right:before {
  content: "\e058";
}
.glyphicon-facetime-video:before {
  content: "\e059";
}
.glyphicon-picture:before {
  content: "\e060";
}
.glyphicon-map-marker:before {
  content: "\e062";
}
.glyphicon-adjust:before {
  content: "\e063";
}
.glyphicon-tint:before {
  content: "\e064";
}
.glyphicon-edit:before {
  content: "\e065";
}
.glyphicon-share:before {
  content: "\e066";
}
.glyphicon-check:before {
  content: "\e067";
}
.glyphicon-move:before {
  content: "\e068";
}
.glyphicon-step-backward:before {
  content: "\e069";
}
.glyphicon-fast-backward:before {
  content: "\e070";
}
.glyphicon-backward:before {
  content: "\e071";
}
.glyphicon-play:before {
  content: "\e072";
}
.glyphicon-pause:before {
  content: "\e073";
}
.glyphicon-stop:before {
  content: "\e074";
}
.glyphicon-forward:before {
  content: "\e075";
}
.glyphicon-fast-forward:before {
  content: "\e076";
}
.glyphicon-step-forward:before {
  content: "\e077";
}
.glyphicon-eject:before {
  content: "\e078";
}
.glyphicon-chevron-left:before {
  content: "\e079";
}
.glyphicon-chevron-right:before {
  content: "\e080";
}
.glyphicon-plus-sign:before {
  content: "\e081";
}
.glyphicon-minus-sign:before {
  content: "\e082";
}
.glyphicon-remove-sign:before {
  content: "\e083";
}
.glyphicon-ok-sign:before {
  content: "\e084";
}
.glyphicon-question-sign:before {
  content: "\e085";
}
.glyphicon-info-sign:before {
  content: "\e086";
}
.glyphicon-screenshot:before {
  content: "\e087";
}
.glyphicon-remove-circle:before {
  content: "\e088";
}
.glyphicon-ok-circle:before {
  content: "\e089";
}
.glyphicon-ban-circle:before {
  content: "\e090";
}
.glyphicon-arrow-left:before {
  content: "\e091";
}
.glyphicon-arrow-right:before {
  content: "\e092";
}
.glyphicon-arrow-up:before {
  content: "\e093";
}
.glyphicon-arrow-down:before {
  content: "\e094";
}
.glyphicon-share-alt:before {
  content: "\e095";
}
.glyphicon-resize-full:before {
  content: "\e096";
}
.glyphicon-resize-small:before {
  content: "\e097";
}
.glyphicon-exclamation-sign:before {
  content: "\e101";
}
.glyphicon-gift:before {
  content: "\e102";
}
.glyphicon-leaf:before {
  content: "\e103";
}
.glyphicon-fire:before {
  content: "\e104";
}
.glyphicon-eye-open:before {
  content: "\e105";
}
.glyphicon-eye-close:before {
  content: "\e106";
}
.glyphicon-warning-sign:before {
  content: "\e107";
}
.glyphicon-plane:before {
  content: "\e108";
}
.glyphicon-calendar:before {
  content: "\e109";
}
.glyphicon-random:before {
  content: "\e110";
}
.glyphicon-comment:before {
  content: "\e111";
}
.glyphicon-magnet:before {
  content: "\e112";
}
.glyphicon-chevron-up:before {
  content: "\e113";
}
.glyphicon-chevron-down:before {
  content: "\e114";
}
.glyphicon-retweet:before {
  content: "\e115";
}
.glyphicon-shopping-cart:before {
  content: "\e116";
}
.glyphicon-folder-close:before {
  content: "\e117";
}
.glyphicon-folder-open:before {
  content: "\e118";
}
.glyphicon-resize-vertical:before {
  content: "\e119";
}
.glyphicon-resize-horizontal:before {
  content: "\e120";
}
.glyphicon-hdd:before {
  content: "\e121";
}
.glyphicon-bullhorn:before {
  content: "\e122";
}
.glyphicon-bell:before {
  content: "\e123";
}
.glyphicon-certificate:before {
  content: "\e124";
}
.glyphicon-thumbs-up:before {
  content: "\e125";
}
.glyphicon-thumbs-down:before {
  content: "\e126";
}
.glyphicon-hand-right:before {
  content: "\e127";
}
.glyphicon-hand-left:before {
  content: "\e128";
}
.glyphicon-hand-up:before {
  content: "\e129";
}
.glyphicon-hand-down:before {
  content: "\e130";
}
.glyphicon-circle-arrow-right:before {
  content: "\e131";
}
.glyphicon-circle-arrow-left:before {
  content: "\e132";
}
.glyphicon-circle-arrow-up:before {
  content: "\e133";
}
.glyphicon-circle-arrow-down:before {
  content: "\e134";
}
.glyphicon-globe:before {
  content: "\e135";
}
.glyphicon-wrench:before {
  content: "\e136";
}
.glyphicon-tasks:before {
  content: "\e137";
}
.glyphicon-filter:before {
  content: "\e138";
}
.glyphicon-briefcase:before {
  content: "\e139";
}
.glyphicon-fullscreen:before {
  content: "\e140";
}
.glyphicon-dashboard:before {
  content: "\e141";
}
.glyphicon-paperclip:before {
  content: "\e142";
}
.glyphicon-heart-empty:before {
  content: "\e143";
}
.glyphicon-link:before {
  content: "\e144";
}
.glyphicon-phone:before {
  content: "\e145";
}
.glyphicon-pushpin:before {
  content: "\e146";
}
.glyphicon-usd:before {
  content: "\e148";
}
.glyphicon-gbp:before {
  content: "\e149";
}
.glyphicon-sort:before {
  content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}
.glyphicon-sort-by-order:before {
  content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}
.glyphicon-sort-by-attributes:before {
  content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}
.glyphicon-unchecked:before {
  content: "\e157";
}
.glyphicon-expand:before {
  content: "\e158";
}
.glyphicon-collapse-down:before {
  content: "\e159";
}
.glyphicon-collapse-up:before {
  content: "\e160";
}
.glyphicon-log-in:before {
  content: "\e161";
}
.glyphicon-flash:before {
  content: "\e162";
}
.glyphicon-log-out:before {
  content: "\e163";
}
.glyphicon-new-window:before {
  content: "\e164";
}
.glyphicon-record:before {
  content: "\e165";
}
.glyphicon-save:before {
  content: "\e166";
}
.glyphicon-open:before {
  content: "\e167";
}
.glyphicon-saved:before {
  content: "\e168";
}
.glyphicon-import:before {
  content: "\e169";
}
.glyphicon-export:before {
  content: "\e170";
}
.glyphicon-send:before {
  content: "\e171";
}
.glyphicon-floppy-disk:before {
  content: "\e172";
}
.glyphicon-floppy-saved:before {
  content: "\e173";
}
.glyphicon-floppy-remove:before {
  content: "\e174";
}
.glyphicon-floppy-save:before {
  content: "\e175";
}
.glyphicon-floppy-open:before {
  content: "\e176";
}
.glyphicon-credit-card:before {
  content: "\e177";
}
.glyphicon-transfer:before {
  content: "\e178";
}
.glyphicon-cutlery:before {
  content: "\e179";
}
.glyphicon-header:before {
  content: "\e180";
}
.glyphicon-compressed:before {
  content: "\e181";
}
.glyphicon-earphone:before {
  content: "\e182";
}
.glyphicon-phone-alt:before {
  content: "\e183";
}
.glyphicon-tower:before {
  content: "\e184";
}
.glyphicon-stats:before {
  content: "\e185";
}
.glyphicon-sd-video:before {
  content: "\e186";
}
.glyphicon-hd-video:before {
  content: "\e187";
}
.glyphicon-subtitles:before {
  content: "\e188";
}
.glyphicon-sound-stereo:before {
  content: "\e189";
}
.glyphicon-sound-dolby:before {
  content: "\e190";
}
.glyphicon-sound-5-1:before {
  content: "\e191";
}
.glyphicon-sound-6-1:before {
  content: "\e192";
}
.glyphicon-sound-7-1:before {
  content: "\e193";
}
.glyphicon-copyright-mark:before {
  content: "\e194";
}
.glyphicon-registration-mark:before {
  content: "\e195";
}
.glyphicon-cloud-download:before {
  content: "\e197";
}
.glyphicon-cloud-upload:before {
  content: "\e198";
}
.glyphicon-tree-conifer:before {
  content: "\e199";
}
.glyphicon-tree-deciduous:before {
  content: "\e200";
}
.glyphicon-cd:before {
  content: "\e201";
}
.glyphicon-save-file:before {
  content: "\e202";
}
.glyphicon-open-file:before {
  content: "\e203";
}
.glyphicon-level-up:before {
  content: "\e204";
}
.glyphicon-copy:before {
  content: "\e205";
}
.glyphicon-paste:before {
  content: "\e206";
}
.glyphicon-alert:before {
  content: "\e209";
}
.glyphicon-equalizer:before {
  content: "\e210";
}
.glyphicon-king:before {
  content: "\e211";
}
.glyphicon-queen:before {
  content: "\e212";
}
.glyphicon-pawn:before {
  content: "\e213";
}
.glyphicon-bishop:before {
  content: "\e214";
}
.glyphicon-knight:before {
  content: "\e215";
}
.glyphicon-baby-formula:before {
  content: "\e216";
}
.glyphicon-tent:before {
  content: "\26fa";
}
.glyphicon-blackboard:before {
  content: "\e218";
}
.glyphicon-bed:before {
  content: "\e219";
}
.glyphicon-apple:before {
  content: "\f8ff";
}
.glyphicon-erase:before {
  content: "\e221";
}
.glyphicon-hourglass:before {
  content: "\231b";
}
.glyphicon-lamp:before {
  content: "\e223";
}
.glyphicon-duplicate:before {
  content: "\e224";
}
.glyphicon-piggy-bank:before {
  content: "\e225";
}
.glyphicon-scissors:before {
  content: "\e226";
}
.glyphicon-bitcoin:before {
  content: "\e227";
}
.glyphicon-btc:before {
  content: "\e227";
}
.glyphicon-xbt:before {
  content: "\e227";
}
.glyphicon-yen:before {
  content: "\00a5";
}
.glyphicon-jpy:before {
  content: "\00a5";
}
.glyphicon-ruble:before {
  content: "\20bd";
}
.glyphicon-rub:before {
  content: "\20bd";
}
.glyphicon-scale:before {
  content: "\e230";
}
.glyphicon-ice-lolly:before {
  content: "\e231";
}
.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}
.glyphicon-education:before {
  content: "\e233";
}
.glyphicon-option-horizontal:before {
  content: "\e234";
}
.glyphicon-option-vertical:before {
  content: "\e235";
}
.glyphicon-menu-hamburger:before {
  content: "\e236";
}
.glyphicon-modal-window:before {
  content: "\e237";
}
.glyphicon-oil:before {
  content: "\e238";
}
.glyphicon-grain:before {
  content: "\e239";
}
.glyphicon-sunglasses:before {
  content: "\e240";
}
.glyphicon-text-size:before {
  content: "\e241";
}
.glyphicon-text-color:before {
  content: "\e242";
}
.glyphicon-text-background:before {
  content: "\e243";
}
.glyphicon-object-align-top:before {
  content: "\e244";
}
.glyphicon-object-align-bottom:before {
  content: "\e245";
}
.glyphicon-object-align-horizontal:before {
  content: "\e246";
}
.glyphicon-object-align-left:before {
  content: "\e247";
}
.glyphicon-object-align-vertical:before {
  content: "\e248";
}
.glyphicon-object-align-right:before {
  content: "\e249";
}
.glyphicon-triangle-right:before {
  content: "\e250";
}
.glyphicon-triangle-left:before {
  content: "\e251";
}
.glyphicon-triangle-bottom:before {
  content: "\e252";
}
.glyphicon-triangle-top:before {
  content: "\e253";
}
.glyphicon-console:before {
  content: "\e254";
}
.glyphicon-superscript:before {
  content: "\e255";
}
.glyphicon-subscript:before {
  content: "\e256";
}
.glyphicon-menu-left:before {
  content: "\e257";
}
.glyphicon-menu-right:before {
  content: "\e258";
}
.glyphicon-menu-down:before {
  content: "\e259";
}
.glyphicon-menu-up:before {
  content: "\e260";
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px;
  line-height: 1.42857143;
  color: #000;
  background-color: #fff;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
a {
  color: #337ab7;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
figure {
  margin: 0;
}
img {
  vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 3px;
}
.img-thumbnail {
  padding: 4px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 2px;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.img-circle {
  border-radius: 50%;
}
hr {
  margin-top: 18px;
  margin-bottom: 18px;
  border: 0;
  border-top: 1px solid #eeeeee;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}
[role="button"] {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #777777;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 18px;
  margin-bottom: 9px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
  font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 9px;
  margin-bottom: 9px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
  font-size: 75%;
}
h1,
.h1 {
  font-size: 33px;
}
h2,
.h2 {
  font-size: 27px;
}
h3,
.h3 {
  font-size: 23px;
}
h4,
.h4 {
  font-size: 17px;
}
h5,
.h5 {
  font-size: 13px;
}
h6,
.h6 {
  font-size: 12px;
}
p {
  margin: 0 0 9px;
}
.lead {
  margin-bottom: 18px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 19.5px;
  }
}
small,
.small {
  font-size: 92%;
}
mark,
.mark {
  background-color: #fcf8e3;
  padding: .2em;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-nowrap {
  white-space: nowrap;
}
.text-lowercase {
  text-transform: lowercase;
}
.text-uppercase {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-muted {
  color: #777777;
}
.text-primary {
  color: #337ab7;
}
a.text-primary:hover,
a.text-primary:focus {
  color: #286090;
}
.text-success {
  color: #3c763d;
}
a.text-success:hover,
a.text-success:focus {
  color: #2b542c;
}
.text-info {
  color: #31708f;
}
a.text-info:hover,
a.text-info:focus {
  color: #245269;
}
.text-warning {
  color: #8a6d3b;
}
a.text-warning:hover,
a.text-warning:focus {
  color: #66512c;
}
.text-danger {
  color: #a94442;
}
a.text-danger:hover,
a.text-danger:focus {
  color: #843534;
}
.bg-primary {
  color: #fff;
  background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090;
}
.bg-success {
  background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee;
}
.bg-warning {
  background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 8px;
  margin: 36px 0 18px;
  border-bottom: 1px solid #eeeeee;
}
ul,
ol {
  margin-top: 0;
  margin-bottom: 9px;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin-bottom: 0;
}
.list-unstyled {
  padding-left: 0;
  list-style: none;
}
.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
}
.list-inline > li {
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}
dl {
  margin-top: 0;
  margin-bottom: 18px;
}
dt,
dd {
  line-height: 1.42857143;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
@media (min-width: 541px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}
abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777777;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
blockquote {
  padding: 9px 18px;
  margin: 0 0 18px;
  font-size: inherit;
  border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  color: #777777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}
address {
  margin-bottom: 18px;
  font-style: normal;
  line-height: 1.42857143;
}
code,
kbd,
pre,
samp {
  font-family: monospace;
}
code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 2px;
}
kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #888;
  background-color: transparent;
  border-radius: 1px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  box-shadow: none;
}
pre {
  display: block;
  padding: 8.5px;
  margin: 0 0 9px;
  font-size: 12px;
  line-height: 1.42857143;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 2px;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}
.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0px;
  padding-right: 0px;
}
@media (min-width: 768px) {
  .container {
    width: 768px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 940px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1140px;
  }
}
.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0px;
  padding-right: 0px;
}
.row {
  margin-left: 0px;
  margin-right: 0px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 0px;
  padding-right: 0px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0%;
}
@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
table {
  background-color: transparent;
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left;
}
th {
  text-align: left;
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 18px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table .table {
  background-color: #fff;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}
.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
  background-color: #f5f5f5;
}
table col[class*="col-"] {
  position: static;
  float: none;
  display: table-column;
}
table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  float: none;
  display: table-cell;
}
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}
.table-responsive {
  overflow-x: auto;
  min-height: 0.01%;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 13.5px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}
legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 18px;
  font-size: 19.5px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}
input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}
input[type="file"] {
  display: block;
}
input[type="range"] {
  display: block;
  width: 100%;
}
select[multiple],
select[size] {
  height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
output {
  display: block;
  padding-top: 7px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
}
.form-control {
  display: block;
  width: 100%;
  height: 32px;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control::-ms-expand {
  border: 0;
  background-color: transparent;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}
textarea.form-control {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 32px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm,
  .input-group-sm input[type="date"],
  .input-group-sm input[type="time"],
  .input-group-sm input[type="datetime-local"],
  .input-group-sm input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg,
  .input-group-lg input[type="date"],
  .input-group-lg input[type="time"],
  .input-group-lg input[type="datetime-local"],
  .input-group-lg input[type="month"] {
    line-height: 45px;
  }
}
.form-group {
  margin-bottom: 15px;
}
.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 18px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9;
}
.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}
.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 31px;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
  padding-left: 0;
  padding-right: 0;
}
.input-sm {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
select.input-sm {
  height: 30px;
  line-height: 30px;
}
textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}
.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 30px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.input-lg {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
select.input-lg {
  height: 45px;
  line-height: 45px;
}
textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}
.form-group-lg .form-control {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
.form-group-lg select.form-control {
  height: 45px;
  line-height: 45px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 45px;
  min-height: 35px;
  padding: 11px 16px;
  font-size: 17px;
  line-height: 1.3333333;
}
.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 40px;
}
.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  pointer-events: none;
}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 45px;
  height: 45px;
  line-height: 45px;
}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}
.has-success .form-control-feedback {
  color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}
.has-error .form-control-feedback {
  color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
  top: 23px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}
.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #404040;
}
@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 25px;
}
.form-horizontal .form-group {
  margin-left: 0px;
  margin-right: 0px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 0px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 17px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}
.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  border-radius: 2px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}
a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:focus,
.btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:focus,
.btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open > .dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open > .dropdown-toggle.btn-info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:focus,
.btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active:hover,
.btn-warning.active:hover,
.open > .dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open > .dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open > .dropdown-toggle.btn-warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:focus,
.btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active:hover,
.btn-danger.active:hover,
.open > .dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open > .dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open > .dropdown-toggle.btn-danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}
.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 5px;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}
.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}
.fade.in {
  opacity: 1;
}
.collapse {
  display: none;
}
.collapse.in {
  display: block;
}
tr.collapse.in {
  display: table-row;
}
tbody.collapse.in {
  display: table-row-group;
}
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height, visibility;
  transition-property: height, visibility;
  -webkit-transition-duration: 0.35s;
  transition-duration: 0.35s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.dropup,
.dropdown {
  position: relative;
}
.dropdown-toggle:focus {
  outline: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 13px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 2px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 8px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333333;
  white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #337ab7;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: #777777;
}
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  cursor: not-allowed;
}
.open > .dropdown-menu {
  display: block;
}
.open > a {
  outline: 0;
}
.dropdown-menu-right {
  left: auto;
  right: 0;
}
.dropdown-menu-left {
  left: 0;
  right: auto;
}
.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857143;
  color: #777777;
  white-space: nowrap;
}
.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 990;
}
.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: "";
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}
@media (min-width: 541px) {
  .navbar-right .dropdown-menu {
    left: auto;
    right: 0;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}
.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group > .btn-group {
  float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn .caret {
  margin-left: 0;
}
.btn-lg .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}
.dropup .btn-lg .caret {
  border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}
.input-group .form-control:focus {
  z-index: 3;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  line-height: 45px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  line-height: 30px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}
.input-group-addon {
  padding: 6px 12px;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 2px;
}
.input-group-addon.input-sm {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 1px;
}
.input-group-addon.input-lg {
  padding: 10px 16px;
  font-size: 17px;
  border-radius: 3px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.input-group-addon:first-child {
  border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.input-group-addon:last-child {
  border-left: 0;
}
.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}
.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.nav > li.disabled > a {
  color: #777777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}
.nav .nav-divider {
  height: 1px;
  margin: 8px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}
.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-radius: 2px 2px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: #555555;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}
.nav-tabs.nav-justified {
  width: 100%;
  border-bottom: 0;
}
.nav-tabs.nav-justified > li {
  float: none;
}
.nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 2px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 2px 2px 0 0;
  }
  .nav-tabs.nav-justified > .active > a,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 2px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}
.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}
.nav-justified {
  width: 100%;
}
.nav-justified > li {
  float: none;
}
.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a {
  margin-right: 0;
  border-radius: 2px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 2px 2px 0 0;
  }
  .nav-tabs-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.navbar {
  position: relative;
  min-height: 30px;
  margin-bottom: 18px;
  border: 1px solid transparent;
}
@media (min-width: 541px) {
  .navbar {
    border-radius: 2px;
  }
}
@media (min-width: 541px) {
  .navbar-header {
    float: left;
  }
}
.navbar-collapse {
  overflow-x: visible;
  padding-right: 0px;
  padding-left: 0px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch;
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 541px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse,
  .navbar-static-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    padding-left: 0;
    padding-right: 0;
  }
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 540px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
  margin-right: 0px;
  margin-left: 0px;
}
@media (min-width: 541px) {
  .container > .navbar-header,
  .container-fluid > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}
.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 541px) {
  .navbar-static-top {
    border-radius: 0;
  }
}
.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media (min-width: 541px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}
.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}
.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}
.navbar-brand {
  float: left;
  padding: 6px 0px;
  font-size: 17px;
  line-height: 18px;
  height: 30px;
}
.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none;
}
.navbar-brand > img {
  display: block;
}
@media (min-width: 541px) {
  .navbar > .container .navbar-brand,
  .navbar > .container-fluid .navbar-brand {
    margin-left: 0px;
  }
}
.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 0px;
  padding: 9px 10px;
  margin-top: -2px;
  margin-bottom: -2px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 2px;
}
.navbar-toggle:focus {
  outline: 0;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
@media (min-width: 541px) {
  .navbar-toggle {
    display: none;
  }
}
.navbar-nav {
  margin: 3px 0px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 18px;
}
@media (max-width: 540px) {
  .navbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    box-shadow: none;
  }
  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-nav .open .dropdown-menu > li > a {
    line-height: 18px;
  }
  .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-nav .open .dropdown-menu > li > a:focus {
    background-image: none;
  }
}
@media (min-width: 541px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
.navbar-form {
  margin-left: 0px;
  margin-right: 0px;
  padding: 10px 0px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: -1px;
  margin-bottom: -1px;
}
@media (min-width: 768px) {
  .navbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .navbar-form .form-control-static {
    display: inline-block;
  }
  .navbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .navbar-form .input-group .input-group-addon,
  .navbar-form .input-group .input-group-btn,
  .navbar-form .input-group .form-control {
    width: auto;
  }
  .navbar-form .input-group > .form-control {
    width: 100%;
  }
  .navbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio,
  .navbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio label,
  .navbar-form .checkbox label {
    padding-left: 0;
  }
  .navbar-form .radio input[type="radio"],
  .navbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .navbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}
@media (max-width: 540px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 541px) {
  .navbar-form {
    width: auto;
    border: 0;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}
.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.navbar-btn {
  margin-top: -1px;
  margin-bottom: -1px;
}
.navbar-btn.btn-sm {
  margin-top: 0px;
  margin-bottom: 0px;
}
.navbar-btn.btn-xs {
  margin-top: 4px;
  margin-bottom: 4px;
}
.navbar-text {
  margin-top: 6px;
  margin-bottom: 6px;
}
@media (min-width: 541px) {
  .navbar-text {
    float: left;
    margin-left: 0px;
    margin-right: 0px;
  }
}
@media (min-width: 541px) {
  .navbar-left {
    float: left !important;
    float: left;
  }
  .navbar-right {
    float: right !important;
    float: right;
    margin-right: 0px;
  }
  .navbar-right ~ .navbar-right {
    margin-right: 0;
  }
}
.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
  color: #777;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #777;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}
.navbar-default .navbar-toggle {
  border-color: #ddd;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  background-color: #e7e7e7;
  color: #555;
}
@media (max-width: 540px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}
.navbar-default .navbar-link {
  color: #777;
}
.navbar-default .navbar-link:hover {
  color: #333;
}
.navbar-default .btn-link {
  color: #777;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
  color: #333;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}
.navbar-inverse {
  background-color: #222;
  border-color: #080808;
}
.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #080808;
}
.navbar-inverse .navbar-nav > .disabled > a,
.navbar-inverse .navbar-nav > .disabled > a:hover,
.navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}
.navbar-inverse .navbar-toggle {
  border-color: #333;
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  background-color: #080808;
  color: #fff;
}
@media (max-width: 540px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}
.navbar-inverse .navbar-link {
  color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #9d9d9d;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 18px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 2px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  content: "/\00a0";
  padding: 0 5px;
  color: #5e5e5e;
}
.breadcrumb > .active {
  color: #777777;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 18px 0;
  border-radius: 2px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  line-height: 1.42857143;
  text-decoration: none;
  color: #337ab7;
  background-color: #fff;
  border: 1px solid #ddd;
  margin-left: -1px;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-bottom-left-radius: 2px;
  border-top-left-radius: 2px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-bottom-right-radius: 2px;
  border-top-right-radius: 2px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
  z-index: 2;
  color: #23527c;
  background-color: #eeeeee;
  border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  z-index: 3;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
  cursor: default;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777777;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 1px;
  border-top-left-radius: 1px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 1px;
  border-top-right-radius: 1px;
}
.pager {
  padding-left: 0;
  margin: 18px 0;
  list-style: none;
  text-align: center;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777777;
  background-color: #fff;
  cursor: not-allowed;
}
.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}
.label-default {
  background-color: #777777;
}
.label-default[href]:hover,
.label-default[href]:focus {
  background-color: #5e5e5e;
}
.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: #286090;
}
.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #449d44;
}
.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #31b0d5;
}
.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #ec971f;
}
.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
  background-color: #c9302c;
}
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #337ab7;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}
.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
  border-radius: 3px;
  padding-left: 0px;
  padding-right: 0px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-left: 60px;
    padding-right: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 59px;
  }
}
.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 18px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 2px;
  -webkit-transition: border 0.2s ease-in-out;
  -o-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  margin-left: auto;
  margin-right: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}
.thumbnail .caption {
  padding: 9px;
  color: #000;
}
.alert {
  padding: 15px;
  margin-bottom: 18px;
  border: 1px solid transparent;
  border-radius: 2px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  overflow: hidden;
  height: 18px;
  margin-bottom: 18px;
  background-color: #f5f5f5;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 18px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-transition: width 0.6s ease;
  -o-transition: width 0.6s ease;
  transition: width 0.6s ease;
}
.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
  background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-info {
  background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-warning {
  background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-danger {
  background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}
.media,
.media-body {
  zoom: 1;
  overflow: hidden;
}
.media-body {
  width: 10000px;
}
.media-object {
  display: block;
}
.media-object.img-thumbnail {
  max-width: none;
}
.media-right,
.media > .pull-right {
  padding-left: 10px;
}
.media-left,
.media > .pull-left {
  padding-right: 10px;
}
.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}
.media-middle {
  vertical-align: middle;
}
.media-bottom {
  vertical-align: bottom;
}
.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.media-list {
  padding-left: 0;
  list-style: none;
}
.list-group {
  margin-bottom: 20px;
  padding-left: 0;
}
.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}
.list-group-item:first-child {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}
a.list-group-item,
button.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus {
  text-decoration: none;
  color: #555;
  background-color: #f5f5f5;
}
button.list-group-item {
  width: 100%;
  text-align: left;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #777777;
  cursor: not-allowed;
}
.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}
.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
  color: #777777;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}
.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8;
}
a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
  color: #3c763d;
  background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}
.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}
a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
  color: #31708f;
  background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}
.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}
a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}
.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}
a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}
.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}
.panel {
  margin-bottom: 18px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 2px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.panel-body {
  padding: 15px;
}
.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}
.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 15px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}
.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
  border-top: 0;
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
}
.list-group + .panel-footer {
  border-top-width: 0;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-left: 15px;
  padding-right: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: 1px;
  border-top-right-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: 1px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-left-radius: 1px;
  border-bottom-right-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: 1px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  border: 0;
  margin-bottom: 0;
}
.panel-group {
  margin-bottom: 18px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 2px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}
.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}
.panel-primary {
  border-color: #337ab7;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}
.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}
.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}
.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}
.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}
.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border: 0;
}
.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
  padding-bottom: 75%;
}
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}
.well-lg {
  padding: 24px;
  border-radius: 3px;
}
.well-sm {
  padding: 9px;
  border-radius: 1px;
}
.close {
  float: right;
  font-size: 19.5px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20);
}
.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}
.modal-open {
  overflow: hidden;
}
.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  -o-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}
.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}
.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
  margin-top: -2px;
}
.modal-title {
  margin: 0;
  line-height: 1.42857143;
}
.modal-body {
  position: relative;
  padding: 15px;
}
.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }
  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0);
}
.tooltip.in {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.tooltip.top {
  margin-top: -3px;
  padding: 5px 0;
}
.tooltip.right {
  margin-left: 3px;
  padding: 0 5px;
}
.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0;
}
.tooltip.left {
  margin-left: -3px;
  padding: 0 5px;
}
.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 2px;
}
.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 13px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 13px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 2px 2px 0 0;
}
.popover-content {
  padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover > .arrow {
  border-width: 11px;
}
.popover > .arrow:after {
  border-width: 10px;
  content: "";
}
.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px;
}
.popover.top > .arrow:after {
  content: " ";
  bottom: 1px;
  margin-left: -10px;
  border-bottom-width: 0;
  border-top-color: #fff;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.right > .arrow:after {
  content: " ";
  left: 1px;
  bottom: -10px;
  border-left-width: 0;
  border-right-color: #fff;
}
.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px;
}
.popover.bottom > .arrow:after {
  content: " ";
  top: 1px;
  margin-left: -10px;
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
  content: " ";
  right: 1px;
  border-right-width: 0;
  border-left-color: #fff;
  bottom: -10px;
}
.carousel {
  position: relative;
}
.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.carousel-inner > .item {
  display: none;
  position: relative;
  -webkit-transition: 0.6s ease-in-out left;
  -o-transition: 0.6s ease-in-out left;
  transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    -o-transition: -o-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
  }
  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}
.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  background-color: rgba(0, 0, 0, 0);
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
  left: auto;
  right: 0;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover,
.carousel-control:focus {
  outline: 0;
  color: #fff;
  text-decoration: none;
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  z-index: 5;
  display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  line-height: 1;
  font-family: serif;
}
.carousel-control .icon-prev:before {
  content: '\2039';
}
.carousel-control .icon-next:before {
  content: '\203a';
}
.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  border: 1px solid #fff;
  border-radius: 10px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: rgba(0, 0, 0, 0);
}
.carousel-indicators .active {
  margin: 0;
  width: 12px;
  height: 12px;
  background-color: #fff;
}
.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px;
  }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after,
.item_buttons:before,
.item_buttons:after {
  content: " ";
  display: table;
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after,
.item_buttons:after {
  clear: both;
}
.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.pull-right {
  float: right !important;
}
.pull-left {
  float: left !important;
}
.hide {
  display: none !important;
}
.show {
  display: block !important;
}
.invisible {
  visibility: hidden;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.hidden {
  display: none !important;
}
.affix {
  position: fixed;
}
@-ms-viewport {
  width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}
@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}
/*!
*
* Font Awesome
*
*/
/*!
 *  Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0');
  src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em;
}
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #fff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
/*!
*
* IPython base
*
*/
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
code {
  color: #000;
}
pre {
  font-size: inherit;
  line-height: inherit;
}
label {
  font-weight: normal;
}
/* Make the page background atleast 100% the height of the view port */
/* Make the page itself atleast 70% the height of the view port */
.border-box-sizing {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.corner-all {
  border-radius: 2px;
}
.no-padding {
  padding: 0px;
}
/* Flexible box model classes */
/* Taken from Alex Russell http://infrequently.org/2009/08/css-3-progress/ */
/* This file is a compatability layer.  It allows the usage of flexible box 
model layouts accross multiple browsers, including older browsers.  The newest,
universal implementation of the flexible box model is used when available (see
`Modern browsers` comments below).  Browsers that are known to implement this 
new spec completely include:

    Firefox 28.0+
    Chrome 29.0+
    Internet Explorer 11+ 
    Opera 17.0+

Browsers not listed, including Safari, are supported via the styling under the
`Old browsers` comments below.
*/
.hbox {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
.hbox > * {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
}
.vbox {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.vbox > * {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
}
.hbox.reverse,
.vbox.reverse,
.reverse {
  /* Old browsers */
  -webkit-box-direction: reverse;
  -moz-box-direction: reverse;
  box-direction: reverse;
  /* Modern browsers */
  flex-direction: row-reverse;
}
.hbox.box-flex0,
.vbox.box-flex0,
.box-flex0 {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
  width: auto;
}
.hbox.box-flex1,
.vbox.box-flex1,
.box-flex1 {
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
.hbox.box-flex,
.vbox.box-flex,
.box-flex {
  /* Old browsers */
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
.hbox.box-flex2,
.vbox.box-flex2,
.box-flex2 {
  /* Old browsers */
  -webkit-box-flex: 2;
  -moz-box-flex: 2;
  box-flex: 2;
  /* Modern browsers */
  flex: 2;
}
.box-group1 {
  /*  Deprecated */
  -webkit-box-flex-group: 1;
  -moz-box-flex-group: 1;
  box-flex-group: 1;
}
.box-group2 {
  /* Deprecated */
  -webkit-box-flex-group: 2;
  -moz-box-flex-group: 2;
  box-flex-group: 2;
}
.hbox.start,
.vbox.start,
.start {
  /* Old browsers */
  -webkit-box-pack: start;
  -moz-box-pack: start;
  box-pack: start;
  /* Modern browsers */
  justify-content: flex-start;
}
.hbox.end,
.vbox.end,
.end {
  /* Old browsers */
  -webkit-box-pack: end;
  -moz-box-pack: end;
  box-pack: end;
  /* Modern browsers */
  justify-content: flex-end;
}
.hbox.center,
.vbox.center,
.center {
  /* Old browsers */
  -webkit-box-pack: center;
  -moz-box-pack: center;
  box-pack: center;
  /* Modern browsers */
  justify-content: center;
}
.hbox.baseline,
.vbox.baseline,
.baseline {
  /* Old browsers */
  -webkit-box-pack: baseline;
  -moz-box-pack: baseline;
  box-pack: baseline;
  /* Modern browsers */
  justify-content: baseline;
}
.hbox.stretch,
.vbox.stretch,
.stretch {
  /* Old browsers */
  -webkit-box-pack: stretch;
  -moz-box-pack: stretch;
  box-pack: stretch;
  /* Modern browsers */
  justify-content: stretch;
}
.hbox.align-start,
.vbox.align-start,
.align-start {
  /* Old browsers */
  -webkit-box-align: start;
  -moz-box-align: start;
  box-align: start;
  /* Modern browsers */
  align-items: flex-start;
}
.hbox.align-end,
.vbox.align-end,
.align-end {
  /* Old browsers */
  -webkit-box-align: end;
  -moz-box-align: end;
  box-align: end;
  /* Modern browsers */
  align-items: flex-end;
}
.hbox.align-center,
.vbox.align-center,
.align-center {
  /* Old browsers */
  -webkit-box-align: center;
  -moz-box-align: center;
  box-align: center;
  /* Modern browsers */
  align-items: center;
}
.hbox.align-baseline,
.vbox.align-baseline,
.align-baseline {
  /* Old browsers */
  -webkit-box-align: baseline;
  -moz-box-align: baseline;
  box-align: baseline;
  /* Modern browsers */
  align-items: baseline;
}
.hbox.align-stretch,
.vbox.align-stretch,
.align-stretch {
  /* Old browsers */
  -webkit-box-align: stretch;
  -moz-box-align: stretch;
  box-align: stretch;
  /* Modern browsers */
  align-items: stretch;
}
div.error {
  margin: 2em;
  text-align: center;
}
div.error > h1 {
  font-size: 500%;
  line-height: normal;
}
div.error > p {
  font-size: 200%;
  line-height: normal;
}
div.traceback-wrapper {
  text-align: left;
  max-width: 800px;
  margin: auto;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
body {
  background-color: #fff;
  /* This makes sure that the body covers the entire window and needs to
       be in a different element than the display: box in wrapper below */
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  overflow: visible;
}
body > #header {
  /* Initially hidden to prevent FLOUC */
  display: none;
  background-color: #fff;
  /* Display over codemirror */
  position: relative;
  z-index: 100;
}
body > #header #header-container {
  padding-bottom: 5px;
  padding-top: 5px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
body > #header .header-bar {
  width: 100%;
  height: 1px;
  background: #e7e7e7;
  margin-bottom: -1px;
}
@media print {
  body > #header {
    display: none !important;
  }
}
#header-spacer {
  width: 100%;
  visibility: hidden;
}
@media print {
  #header-spacer {
    display: none;
  }
}
#ipython_notebook {
  padding-left: 0px;
  padding-top: 1px;
  padding-bottom: 1px;
}
@media (max-width: 991px) {
  #ipython_notebook {
    margin-left: 10px;
  }
}
[dir="rtl"] #ipython_notebook {
  float: right !important;
}
#noscript {
  width: auto;
  padding-top: 16px;
  padding-bottom: 16px;
  text-align: center;
  font-size: 22px;
  color: red;
  font-weight: bold;
}
#ipython_notebook img {
  height: 28px;
}
#site {
  width: 100%;
  display: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  overflow: auto;
}
@media print {
  #site {
    height: auto !important;
  }
}
/* Smaller buttons */
.ui-button .ui-button-text {
  padding: 0.2em 0.8em;
  font-size: 77%;
}
input.ui-button {
  padding: 0.3em 0.9em;
}
span#login_widget {
  float: right;
}
span#login_widget > .button,
#logout {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
span#login_widget > .button:focus,
#logout:focus,
span#login_widget > .button.focus,
#logout.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
span#login_widget > .button:hover,
#logout:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
span#login_widget > .button:active:hover,
#logout:active:hover,
span#login_widget > .button.active:hover,
#logout.active:hover,
.open > .dropdown-togglespan#login_widget > .button:hover,
.open > .dropdown-toggle#logout:hover,
span#login_widget > .button:active:focus,
#logout:active:focus,
span#login_widget > .button.active:focus,
#logout.active:focus,
.open > .dropdown-togglespan#login_widget > .button:focus,
.open > .dropdown-toggle#logout:focus,
span#login_widget > .button:active.focus,
#logout:active.focus,
span#login_widget > .button.active.focus,
#logout.active.focus,
.open > .dropdown-togglespan#login_widget > .button.focus,
.open > .dropdown-toggle#logout.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
  background-image: none;
}
span#login_widget > .button.disabled:hover,
#logout.disabled:hover,
span#login_widget > .button[disabled]:hover,
#logout[disabled]:hover,
fieldset[disabled] span#login_widget > .button:hover,
fieldset[disabled] #logout:hover,
span#login_widget > .button.disabled:focus,
#logout.disabled:focus,
span#login_widget > .button[disabled]:focus,
#logout[disabled]:focus,
fieldset[disabled] span#login_widget > .button:focus,
fieldset[disabled] #logout:focus,
span#login_widget > .button.disabled.focus,
#logout.disabled.focus,
span#login_widget > .button[disabled].focus,
#logout[disabled].focus,
fieldset[disabled] span#login_widget > .button.focus,
fieldset[disabled] #logout.focus {
  background-color: #fff;
  border-color: #ccc;
}
span#login_widget > .button .badge,
#logout .badge {
  color: #fff;
  background-color: #333;
}
.nav-header {
  text-transform: none;
}
#header > span {
  margin-top: 10px;
}
.modal_stretch .modal-dialog {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 80vh;
}
.modal_stretch .modal-dialog .modal-body {
  max-height: calc(100vh - 200px);
  overflow: auto;
  flex: 1;
}
@media (min-width: 768px) {
  .modal .modal-dialog {
    width: 700px;
  }
}
@media (min-width: 768px) {
  select.form-control {
    margin-left: 12px;
    margin-right: 12px;
  }
}
/*!
*
* IPython auth
*
*/
.center-nav {
  display: inline-block;
  margin-bottom: -4px;
}
/*!
*
* IPython tree view
*
*/
/* We need an invisible input field on top of the sentense*/
/* "Drag file onto the list ..." */
.alternate_upload {
  background-color: none;
  display: inline;
}
.alternate_upload.form {
  padding: 0;
  margin: 0;
}
.alternate_upload input.fileinput {
  text-align: center;
  vertical-align: middle;
  display: inline;
  opacity: 0;
  z-index: 2;
  width: 12ex;
  margin-right: -12ex;
}
.alternate_upload .btn-upload {
  height: 22px;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
[dir="rtl"] #tabs li {
  float: right;
}
ul#tabs {
  margin-bottom: 4px;
}
[dir="rtl"] ul#tabs {
  margin-right: 0px;
}
ul#tabs a {
  padding-top: 6px;
  padding-bottom: 4px;
}
ul.breadcrumb a:focus,
ul.breadcrumb a:hover {
  text-decoration: none;
}
ul.breadcrumb i.icon-home {
  font-size: 16px;
  margin-right: 4px;
}
ul.breadcrumb span {
  color: #5e5e5e;
}
.list_toolbar {
  padding: 4px 0 4px 0;
  vertical-align: middle;
}
.list_toolbar .tree-buttons {
  padding-top: 1px;
}
[dir="rtl"] .list_toolbar .tree-buttons {
  float: left !important;
}
[dir="rtl"] .list_toolbar .pull-right {
  padding-top: 1px;
  float: left !important;
}
[dir="rtl"] .list_toolbar .pull-left {
  float: right !important;
}
.dynamic-buttons {
  padding-top: 3px;
  display: inline-block;
}
.list_toolbar [class*="span"] {
  min-height: 24px;
}
.list_header {
  font-weight: bold;
  background-color: #EEE;
}
.list_placeholder {
  font-weight: bold;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
}
.list_container {
  margin-top: 4px;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  border-radius: 2px;
}
.list_container > div {
  border-bottom: 1px solid #ddd;
}
.list_container > div:hover .list-item {
  background-color: red;
}
.list_container > div:last-child {
  border: none;
}
.list_item:hover .list_item {
  background-color: #ddd;
}
.list_item a {
  text-decoration: none;
}
.list_item:hover {
  background-color: #fafafa;
}
.list_header > div,
.list_item > div {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
  line-height: 22px;
}
.list_header > div input,
.list_item > div input {
  margin-right: 7px;
  margin-left: 14px;
  vertical-align: baseline;
  line-height: 22px;
  position: relative;
  top: -1px;
}
.list_header > div .item_link,
.list_item > div .item_link {
  margin-left: -1px;
  vertical-align: baseline;
  line-height: 22px;
}
.new-file input[type=checkbox] {
  visibility: hidden;
}
.item_name {
  line-height: 22px;
  height: 24px;
}
.item_icon {
  font-size: 14px;
  color: #5e5e5e;
  margin-right: 7px;
  margin-left: 7px;
  line-height: 22px;
  vertical-align: baseline;
}
.item_buttons {
  line-height: 1em;
  margin-left: -5px;
}
.item_buttons .btn,
.item_buttons .btn-group,
.item_buttons .input-group {
  float: left;
}
.item_buttons > .btn,
.item_buttons > .btn-group,
.item_buttons > .input-group {
  margin-left: 5px;
}
.item_buttons .btn {
  min-width: 13ex;
}
.item_buttons .running-indicator {
  padding-top: 4px;
  color: #5cb85c;
}
.item_buttons .kernel-name {
  padding-top: 4px;
  color: #5bc0de;
  margin-right: 7px;
  float: left;
}
.toolbar_info {
  height: 24px;
  line-height: 24px;
}
.list_item input:not([type=checkbox]) {
  padding-top: 3px;
  padding-bottom: 3px;
  height: 22px;
  line-height: 14px;
  margin: 0px;
}
.highlight_text {
  color: blue;
}
#project_name {
  display: inline-block;
  padding-left: 7px;
  margin-left: -2px;
}
#project_name > .breadcrumb {
  padding: 0px;
  margin-bottom: 0px;
  background-color: transparent;
  font-weight: bold;
}
#tree-selector {
  padding-right: 0px;
}
[dir="rtl"] #tree-selector a {
  float: right;
}
#button-select-all {
  min-width: 50px;
}
#select-all {
  margin-left: 7px;
  margin-right: 2px;
}
.menu_icon {
  margin-right: 2px;
}
.tab-content .row {
  margin-left: 0px;
  margin-right: 0px;
}
.folder_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f114";
}
.folder_icon:before.pull-left {
  margin-right: .3em;
}
.folder_icon:before.pull-right {
  margin-left: .3em;
}
.notebook_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f02d";
  position: relative;
  top: -1px;
}
.notebook_icon:before.pull-left {
  margin-right: .3em;
}
.notebook_icon:before.pull-right {
  margin-left: .3em;
}
.running_notebook_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f02d";
  position: relative;
  top: -1px;
  color: #5cb85c;
}
.running_notebook_icon:before.pull-left {
  margin-right: .3em;
}
.running_notebook_icon:before.pull-right {
  margin-left: .3em;
}
.file_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f016";
  position: relative;
  top: -2px;
}
.file_icon:before.pull-left {
  margin-right: .3em;
}
.file_icon:before.pull-right {
  margin-left: .3em;
}
#notebook_toolbar .pull-right {
  padding-top: 0px;
  margin-right: -1px;
}
ul#new-menu {
  left: auto;
  right: 0;
}
[dir="rtl"] #new-menu {
  text-align: right;
}
.kernel-menu-icon {
  padding-right: 12px;
  width: 24px;
  content: "\f096";
}
.kernel-menu-icon:before {
  content: "\f096";
}
.kernel-menu-icon-current:before {
  content: "\f00c";
}
#tab_content {
  padding-top: 20px;
}
#running .panel-group .panel {
  margin-top: 3px;
  margin-bottom: 1em;
}
#running .panel-group .panel .panel-heading {
  background-color: #EEE;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
  line-height: 22px;
}
#running .panel-group .panel .panel-heading a:focus,
#running .panel-group .panel .panel-heading a:hover {
  text-decoration: none;
}
#running .panel-group .panel .panel-body {
  padding: 0px;
}
#running .panel-group .panel .panel-body .list_container {
  margin-top: 0px;
  margin-bottom: 0px;
  border: 0px;
  border-radius: 0px;
}
#running .panel-group .panel .panel-body .list_container .list_item {
  border-bottom: 1px solid #ddd;
}
#running .panel-group .panel .panel-body .list_container .list_item:last-child {
  border-bottom: 0px;
}
[dir="rtl"] #running .col-sm-8 {
  float: right !important;
}
.delete-button {
  display: none;
}
.duplicate-button {
  display: none;
}
.rename-button {
  display: none;
}
.shutdown-button {
  display: none;
}
.dynamic-instructions {
  display: inline-block;
  padding-top: 4px;
}
/*!
*
* IPython text editor webapp
*
*/
.selected-keymap i.fa {
  padding: 0px 5px;
}
.selected-keymap i.fa:before {
  content: "\f00c";
}
#mode-menu {
  overflow: auto;
  max-height: 20em;
}
.edit_app #header {
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.edit_app #menubar .navbar {
  /* Use a negative 1 bottom margin, so the border overlaps the border of the
    header */
  margin-bottom: -1px;
}
.dirty-indicator {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator.pull-left {
  margin-right: .3em;
}
.dirty-indicator.pull-right {
  margin-left: .3em;
}
.dirty-indicator-dirty {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator-dirty.pull-left {
  margin-right: .3em;
}
.dirty-indicator-dirty.pull-right {
  margin-left: .3em;
}
.dirty-indicator-clean {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator-clean.pull-left {
  margin-right: .3em;
}
.dirty-indicator-clean.pull-right {
  margin-left: .3em;
}
.dirty-indicator-clean:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f00c";
}
.dirty-indicator-clean:before.pull-left {
  margin-right: .3em;
}
.dirty-indicator-clean:before.pull-right {
  margin-left: .3em;
}
#filename {
  font-size: 16pt;
  display: table;
  padding: 0px 5px;
}
#current-mode {
  padding-left: 5px;
  padding-right: 5px;
}
#texteditor-backdrop {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media not print {
  #texteditor-backdrop {
    background-color: #EEE;
  }
}
@media print {
  #texteditor-backdrop #texteditor-container .CodeMirror-gutter,
  #texteditor-backdrop #texteditor-container .CodeMirror-gutters {
    background-color: #fff;
  }
}
@media not print {
  #texteditor-backdrop #texteditor-container .CodeMirror-gutter,
  #texteditor-backdrop #texteditor-container .CodeMirror-gutters {
    background-color: #fff;
  }
}
@media not print {
  #texteditor-backdrop #texteditor-container {
    padding: 0px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
    box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  }
}
/*!
*
* IPython notebook
*
*/
/* CSS font colors for translated ANSI colors. */
.ansibold {
  font-weight: bold;
}
/* use dark versions for foreground, to improve visibility */
.ansiblack {
  color: black;
}
.ansired {
  color: darkred;
}
.ansigreen {
  color: darkgreen;
}
.ansiyellow {
  color: #c4a000;
}
.ansiblue {
  color: darkblue;
}
.ansipurple {
  color: darkviolet;
}
.ansicyan {
  color: steelblue;
}
.ansigray {
  color: gray;
}
/* and light for background, for the same reason */
.ansibgblack {
  background-color: black;
}
.ansibgred {
  background-color: red;
}
.ansibggreen {
  background-color: green;
}
.ansibgyellow {
  background-color: yellow;
}
.ansibgblue {
  background-color: blue;
}
.ansibgpurple {
  background-color: magenta;
}
.ansibgcyan {
  background-color: cyan;
}
.ansibggray {
  background-color: gray;
}
div.cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border-radius: 2px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-width: 1px;
  border-style: solid;
  border-color: transparent;
  width: 100%;
  padding: 5px;
  /* This acts as a spacer between cells, that is outside the border */
  margin: 0px;
  outline: none;
  border-left-width: 1px;
  padding-left: 5px;
  background: linear-gradient(to right, transparent -40px, transparent 1px, transparent 1px, transparent 100%);
}
div.cell.jupyter-soft-selected {
  border-left-color: #90CAF9;
  border-left-color: #E3F2FD;
  border-left-width: 1px;
  padding-left: 5px;
  border-right-color: #E3F2FD;
  border-right-width: 1px;
  background: #E3F2FD;
}
@media print {
  div.cell.jupyter-soft-selected {
    border-color: transparent;
  }
}
div.cell.selected {
  border-color: #ababab;
  border-left-width: 0px;
  padding-left: 6px;
  background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 5px, transparent 5px, transparent 100%);
}
@media print {
  div.cell.selected {
    border-color: transparent;
  }
}
div.cell.selected.jupyter-soft-selected {
  border-left-width: 0;
  padding-left: 6px;
  background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 7px, #E3F2FD 7px, #E3F2FD 100%);
}
.edit_mode div.cell.selected {
  border-color: #66BB6A;
  border-left-width: 0px;
  padding-left: 6px;
  background: linear-gradient(to right, #66BB6A -40px, #66BB6A 5px, transparent 5px, transparent 100%);
}
@media print {
  .edit_mode div.cell.selected {
    border-color: transparent;
  }
}
.prompt {
  /* This needs to be wide enough for 3 digit prompt numbers: In[100]: */
  min-width: 14ex;
  /* This padding is tuned to match the padding on the CodeMirror editor. */
  padding: 0.4em;
  margin: 0px;
  font-family: monospace;
  text-align: right;
  /* This has to match that of the the CodeMirror class line-height below */
  line-height: 1.21429em;
  /* Don't highlight prompt number selection */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* Use default cursor */
  cursor: default;
}
@media (max-width: 540px) {
  .prompt {
    text-align: left;
  }
}
div.inner_cell {
  min-width: 0;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_area {
  border: 1px solid #cfcfcf;
  border-radius: 2px;
  background: #f7f7f7;
  line-height: 1.21429em;
}
/* This is needed so that empty prompt areas can collapse to zero height when there
   is no content in the output_subarea and the prompt. The main purpose of this is
   to make sure that empty JavaScript output_subareas have no height. */
div.prompt:empty {
  padding-top: 0;
  padding-bottom: 0;
}
div.unrecognized_cell {
  padding: 5px 5px 5px 0px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
div.unrecognized_cell .inner_cell {
  border-radius: 2px;
  padding: 5px;
  font-weight: bold;
  color: red;
  border: 1px solid #cfcfcf;
  background: #eaeaea;
}
div.unrecognized_cell .inner_cell a {
  color: inherit;
  text-decoration: none;
}
div.unrecognized_cell .inner_cell a:hover {
  color: inherit;
  text-decoration: none;
}
@media (max-width: 540px) {
  div.unrecognized_cell > div.prompt {
    display: none;
  }
}
div.code_cell {
  /* avoid page breaking on code cells when printing */
}
@media print {
  div.code_cell {
    page-break-inside: avoid;
  }
}
/* any special styling for code cells that are currently running goes here */
div.input {
  page-break-inside: avoid;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.input {
    /* Old browsers */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-box-align: stretch;
    display: -moz-box;
    -moz-box-orient: vertical;
    -moz-box-align: stretch;
    display: box;
    box-orient: vertical;
    box-align: stretch;
    /* Modern browsers */
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_prompt {
  color: #303F9F;
  border-top: 1px solid transparent;
}
div.input_area > div.highlight {
  margin: 0.4em;
  border: none;
  padding: 0px;
  background-color: transparent;
}
div.input_area > div.highlight > pre {
  margin: 0px;
  border: none;
  padding: 0px;
  background-color: transparent;
}
/* The following gets added to the <head> if it is detected that the user has a
 * monospace font with inconsistent normal/bold/italic height.  See
 * notebookmain.js.  Such fonts will have keywords vertically offset with
 * respect to the rest of the text.  The user should select a better font.
 * See: https://github.com/ipython/ipython/issues/1503
 *
 * .CodeMirror span {
 *      vertical-align: bottom;
 * }
 */
.CodeMirror {
  line-height: 1.21429em;
  /* Changed from 1em to our global default */
  font-size: 14px;
  height: auto;
  /* Changed to auto to autogrow */
  background: none;
  /* Changed from white to allow our bg to show through */
}
.CodeMirror-scroll {
  /*  The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
  /*  We have found that if it is visible, vertical scrollbars appear with font size changes.*/
  overflow-y: hidden;
  overflow-x: auto;
}
.CodeMirror-lines {
  /* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
  /* we have set a different line-height and want this to scale with that. */
  padding: 0.4em;
}
.CodeMirror-linenumber {
  padding: 0 8px 0 4px;
}
.CodeMirror-gutters {
  border-bottom-left-radius: 2px;
  border-top-left-radius: 2px;
}
.CodeMirror pre {
  /* In CM3 this went to 4px from 0 in CM2. We need the 0 value because of how we size */
  /* .CodeMirror-lines */
  padding: 0;
  border: 0;
  border-radius: 0;
}
/*

Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
Adapted from GitHub theme

*/
.highlight-base {
  color: #000;
}
.highlight-variable {
  color: #000;
}
.highlight-variable-2 {
  color: #1a1a1a;
}
.highlight-variable-3 {
  color: #333333;
}
.highlight-string {
  color: #BA2121;
}
.highlight-comment {
  color: #408080;
  font-style: italic;
}
.highlight-number {
  color: #080;
}
.highlight-atom {
  color: #88F;
}
.highlight-keyword {
  color: #008000;
  font-weight: bold;
}
.highlight-builtin {
  color: #008000;
}
.highlight-error {
  color: #f00;
}
.highlight-operator {
  color: #AA22FF;
  font-weight: bold;
}
.highlight-meta {
  color: #AA22FF;
}
/* previously not defined, copying from default codemirror */
.highlight-def {
  color: #00f;
}
.highlight-string-2 {
  color: #f50;
}
.highlight-qualifier {
  color: #555;
}
.highlight-bracket {
  color: #997;
}
.highlight-tag {
  color: #170;
}
.highlight-attribute {
  color: #00c;
}
.highlight-header {
  color: blue;
}
.highlight-quote {
  color: #090;
}
.highlight-link {
  color: #00c;
}
/* apply the same style to codemirror */
.cm-s-ipython span.cm-keyword {
  color: #008000;
  font-weight: bold;
}
.cm-s-ipython span.cm-atom {
  color: #88F;
}
.cm-s-ipython span.cm-number {
  color: #080;
}
.cm-s-ipython span.cm-def {
  color: #00f;
}
.cm-s-ipython span.cm-variable {
  color: #000;
}
.cm-s-ipython span.cm-operator {
  color: #AA22FF;
  font-weight: bold;
}
.cm-s-ipython span.cm-variable-2 {
  color: #1a1a1a;
}
.cm-s-ipython span.cm-variable-3 {
  color: #333333;
}
.cm-s-ipython span.cm-comment {
  color: #408080;
  font-style: italic;
}
.cm-s-ipython span.cm-string {
  color: #BA2121;
}
.cm-s-ipython span.cm-string-2 {
  color: #f50;
}
.cm-s-ipython span.cm-meta {
  color: #AA22FF;
}
.cm-s-ipython span.cm-qualifier {
  color: #555;
}
.cm-s-ipython span.cm-builtin {
  color: #008000;
}
.cm-s-ipython span.cm-bracket {
  color: #997;
}
.cm-s-ipython span.cm-tag {
  color: #170;
}
.cm-s-ipython span.cm-attribute {
  color: #00c;
}
.cm-s-ipython span.cm-header {
  color: blue;
}
.cm-s-ipython span.cm-quote {
  color: #090;
}
.cm-s-ipython span.cm-link {
  color: #00c;
}
.cm-s-ipython span.cm-error {
  color: #f00;
}
.cm-s-ipython span.cm-tab {
  background: url();
  background-position: right;
  background-repeat: no-repeat;
}
div.output_wrapper {
  /* this position must be relative to enable descendents to be absolute within it */
  position: relative;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  z-index: 1;
}
/* class for the output area when it should be height-limited */
div.output_scroll {
  /* ideally, this would be max-height, but FF barfs all over that */
  height: 24em;
  /* FF needs this *and the wrapper* to specify full width, or it will shrinkwrap */
  width: 100%;
  overflow: auto;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  display: block;
}
/* output div while it is collapsed */
div.output_collapsed {
  margin: 0px;
  padding: 0px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
div.out_prompt_overlay {
  height: 100%;
  padding: 0px 0.4em;
  position: absolute;
  border-radius: 2px;
}
div.out_prompt_overlay:hover {
  /* use inner shadow to get border that is computed the same on WebKit/FF */
  -webkit-box-shadow: inset 0 0 1px #000;
  box-shadow: inset 0 0 1px #000;
  background: rgba(240, 240, 240, 0.5);
}
div.output_prompt {
  color: #D84315;
}
/* This class is the outer container of all output sections. */
div.output_area {
  padding: 0px;
  page-break-inside: avoid;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
div.output_area .MathJax_Display {
  text-align: left !important;
}
div.output_area .rendered_html table {
  margin-left: 0;
  margin-right: 0;
}
div.output_area .rendered_html img {
  margin-left: 0;
  margin-right: 0;
}
div.output_area img,
div.output_area svg {
  max-width: 100%;
  height: auto;
}
div.output_area img.unconfined,
div.output_area svg.unconfined {
  max-width: none;
}
/* This is needed to protect the pre formating from global settings such
   as that of bootstrap */
.output {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.output_area {
    /* Old browsers */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-box-align: stretch;
    display: -moz-box;
    -moz-box-orient: vertical;
    -moz-box-align: stretch;
    display: box;
    box-orient: vertical;
    box-align: stretch;
    /* Modern browsers */
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
}
div.output_area pre {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  color: black;
  background-color: transparent;
  border-radius: 0;
}
/* This class is for the output subarea inside the output_area and after
   the prompt div. */
div.output_subarea {
  overflow-x: auto;
  padding: 0.4em;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
  max-width: calc(100% - 14ex);
}
div.output_scroll div.output_subarea {
  overflow-x: visible;
}
/* The rest of the output_* classes are for special styling of the different
   output types */
/* all text output has this class: */
div.output_text {
  text-align: left;
  color: #000;
  /* This has to match that of the the CodeMirror class line-height below */
  line-height: 1.21429em;
}
/* stdout/stderr are 'text' as well as 'stream', but execute_result/error are *not* streams */
div.output_stderr {
  background: #fdd;
  /* very light red background for stderr */
}
div.output_latex {
  text-align: left;
}
/* Empty output_javascript divs should have no height */
div.output_javascript:empty {
  padding: 0;
}
.js-error {
  color: darkred;
}
/* raw_input styles */
div.raw_input_container {
  line-height: 1.21429em;
  padding-top: 5px;
}
pre.raw_input_prompt {
  /* nothing needed here. */
}
input.raw_input {
  font-family: monospace;
  font-size: inherit;
  color: inherit;
  width: auto;
  /* make sure input baseline aligns with prompt */
  vertical-align: baseline;
  /* padding + margin = 0.5em between prompt and cursor */
  padding: 0em 0.25em;
  margin: 0em 0.25em;
}
input.raw_input:focus {
  box-shadow: none;
}
p.p-space {
  margin-bottom: 10px;
}
div.output_unrecognized {
  padding: 5px;
  font-weight: bold;
  color: red;
}
div.output_unrecognized a {
  color: inherit;
  text-decoration: none;
}
div.output_unrecognized a:hover {
  color: inherit;
  text-decoration: none;
}
.rendered_html {
  color: #000;
  /* any extras will just be numbers: */
}
.rendered_html em {
  font-style: italic;
}
.rendered_html strong {
  font-weight: bold;
}
.rendered_html u {
  text-decoration: underline;
}
.rendered_html :link {
  text-decoration: underline;
}
.rendered_html :visited {
  text-decoration: underline;
}
.rendered_html h1 {
  font-size: 185.7%;
  margin: 1.08em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h2 {
  font-size: 157.1%;
  margin: 1.27em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h3 {
  font-size: 128.6%;
  margin: 1.55em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h4 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h5 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
  font-style: italic;
}
.rendered_html h6 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
  font-style: italic;
}
.rendered_html h1:first-child {
  margin-top: 0.538em;
}
.rendered_html h2:first-child {
  margin-top: 0.636em;
}
.rendered_html h3:first-child {
  margin-top: 0.777em;
}
.rendered_html h4:first-child {
  margin-top: 1em;
}
.rendered_html h5:first-child {
  margin-top: 1em;
}
.rendered_html h6:first-child {
  margin-top: 1em;
}
.rendered_html ul {
  list-style: disc;
  margin: 0em 2em;
  padding-left: 0px;
}
.rendered_html ul ul {
  list-style: square;
  margin: 0em 2em;
}
.rendered_html ul ul ul {
  list-style: circle;
  margin: 0em 2em;
}
.rendered_html ol {
  list-style: decimal;
  margin: 0em 2em;
  padding-left: 0px;
}
.rendered_html ol ol {
  list-style: upper-alpha;
  margin: 0em 2em;
}
.rendered_html ol ol ol {
  list-style: lower-alpha;
  margin: 0em 2em;
}
.rendered_html ol ol ol ol {
  list-style: lower-roman;
  margin: 0em 2em;
}
.rendered_html ol ol ol ol ol {
  list-style: decimal;
  margin: 0em 2em;
}
.rendered_html * + ul {
  margin-top: 1em;
}
.rendered_html * + ol {
  margin-top: 1em;
}
.rendered_html hr {
  color: black;
  background-color: black;
}
.rendered_html pre {
  margin: 1em 2em;
}
.rendered_html pre,
.rendered_html code {
  border: 0;
  background-color: #fff;
  color: #000;
  font-size: 100%;
  padding: 0px;
}
.rendered_html blockquote {
  margin: 1em 2em;
}
.rendered_html table {
  margin-left: auto;
  margin-right: auto;
  border: 1px solid black;
  border-collapse: collapse;
}
.rendered_html tr,
.rendered_html th,
.rendered_html td {
  border: 1px solid black;
  border-collapse: collapse;
  margin: 1em 2em;
}
.rendered_html td,
.rendered_html th {
  text-align: left;
  vertical-align: middle;
  padding: 4px;
}
.rendered_html th {
  font-weight: bold;
}
.rendered_html * + table {
  margin-top: 1em;
}
.rendered_html p {
  text-align: left;
}
.rendered_html * + p {
  margin-top: 1em;
}
.rendered_html img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.rendered_html * + img {
  margin-top: 1em;
}
.rendered_html img,
.rendered_html svg {
  max-width: 100%;
  height: auto;
}
.rendered_html img.unconfined,
.rendered_html svg.unconfined {
  max-width: none;
}
div.text_cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.text_cell > div.prompt {
    display: none;
  }
}
div.text_cell_render {
  /*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/
  outline: none;
  resize: none;
  width: inherit;
  border-style: none;
  padding: 0.5em 0.5em 0.5em 0.4em;
  color: #000;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
a.anchor-link:link {
  text-decoration: none;
  padding: 0px 20px;
  visibility: hidden;
}
h1:hover .anchor-link,
h2:hover .anchor-link,
h3:hover .anchor-link,
h4:hover .anchor-link,
h5:hover .anchor-link,
h6:hover .anchor-link {
  visibility: visible;
}
.text_cell.rendered .input_area {
  display: none;
}
.text_cell.rendered .rendered_html {
  overflow-x: auto;
  overflow-y: hidden;
}
.text_cell.unrendered .text_cell_render {
  display: none;
}
.cm-header-1,
.cm-header-2,
.cm-header-3,
.cm-header-4,
.cm-header-5,
.cm-header-6 {
  font-weight: bold;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.cm-header-1 {
  font-size: 185.7%;
}
.cm-header-2 {
  font-size: 157.1%;
}
.cm-header-3 {
  font-size: 128.6%;
}
.cm-header-4 {
  font-size: 110%;
}
.cm-header-5 {
  font-size: 100%;
  font-style: italic;
}
.cm-header-6 {
  font-size: 100%;
  font-style: italic;
}
/*!
*
* IPython notebook webapp
*
*/
@media (max-width: 767px) {
  .notebook_app {
    padding-left: 0px;
    padding-right: 0px;
  }
}
#ipython-main-app {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 100%;
}
div#notebook_panel {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 100%;
}
div#notebook {
  font-size: 14px;
  line-height: 20px;
  overflow-y: hidden;
  overflow-x: auto;
  width: 100%;
  /* This spaces the page away from the edge of the notebook area */
  padding-top: 20px;
  margin: 0px;
  outline: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  min-height: 100%;
}
@media not print {
  #notebook-container {
    padding: 15px;
    background-color: #fff;
    min-height: 0;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
    box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  }
}
@media print {
  #notebook-container {
    width: 100%;
  }
}
div.ui-widget-content {
  border: 1px solid #ababab;
  outline: none;
}
pre.dialog {
  background-color: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 2px;
  padding: 0.4em;
  padding-left: 2em;
}
p.dialog {
  padding: 0.2em;
}
/* Word-wrap output correctly.  This is the CSS3 spelling, though Firefox seems
   to not honor it correctly.  Webkit browsers (Chrome, rekonq, Safari) do.
 */
pre,
code,
kbd,
samp {
  white-space: pre-wrap;
}
#fonttest {
  font-family: monospace;
}
p {
  margin-bottom: 0;
}
.end_space {
  min-height: 100px;
  transition: height .2s ease;
}
.notebook_app > #header {
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
@media not print {
  .notebook_app {
    background-color: #EEE;
  }
}
kbd {
  border-style: solid;
  border-width: 1px;
  box-shadow: none;
  margin: 2px;
  padding-left: 2px;
  padding-right: 2px;
  padding-top: 1px;
  padding-bottom: 1px;
}
/* CSS for the cell toolbar */
.celltoolbar {
  border: thin solid #CFCFCF;
  border-bottom: none;
  background: #EEE;
  border-radius: 2px 2px 0px 0px;
  width: 100%;
  height: 29px;
  padding-right: 4px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
  /* Old browsers */
  -webkit-box-pack: end;
  -moz-box-pack: end;
  box-pack: end;
  /* Modern browsers */
  justify-content: flex-end;
  display: -webkit-flex;
}
@media print {
  .celltoolbar {
    display: none;
  }
}
.ctb_hideshow {
  display: none;
  vertical-align: bottom;
}
/* ctb_show is added to the ctb_hideshow div to show the cell toolbar.
   Cell toolbars are only shown when the ctb_global_show class is also set.
*/
.ctb_global_show .ctb_show.ctb_hideshow {
  display: block;
}
.ctb_global_show .ctb_show + .input_area,
.ctb_global_show .ctb_show + div.text_cell_input,
.ctb_global_show .ctb_show ~ div.text_cell_render {
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;
}
.ctb_global_show .ctb_show ~ div.text_cell_render {
  border: 1px solid #cfcfcf;
}
.celltoolbar {
  font-size: 87%;
  padding-top: 3px;
}
.celltoolbar select {
  display: block;
  width: 100%;
  height: 32px;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
  width: inherit;
  font-size: inherit;
  height: 22px;
  padding: 0px;
  display: inline-block;
}
.celltoolbar select:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.celltoolbar select::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.celltoolbar select:-ms-input-placeholder {
  color: #999;
}
.celltoolbar select::-webkit-input-placeholder {
  color: #999;
}
.celltoolbar select::-ms-expand {
  border: 0;
  background-color: transparent;
}
.celltoolbar select[disabled],
.celltoolbar select[readonly],
fieldset[disabled] .celltoolbar select {
  background-color: #eeeeee;
  opacity: 1;
}
.celltoolbar select[disabled],
fieldset[disabled] .celltoolbar select {
  cursor: not-allowed;
}
textarea.celltoolbar select {
  height: auto;
}
select.celltoolbar select {
  height: 30px;
  line-height: 30px;
}
textarea.celltoolbar select,
select[multiple].celltoolbar select {
  height: auto;
}
.celltoolbar label {
  margin-left: 5px;
  margin-right: 5px;
}
.completions {
  position: absolute;
  z-index: 110;
  overflow: hidden;
  border: 1px solid #ababab;
  border-radius: 2px;
  -webkit-box-shadow: 0px 6px 10px -1px #adadad;
  box-shadow: 0px 6px 10px -1px #adadad;
  line-height: 1;
}
.completions select {
  background: white;
  outline: none;
  border: none;
  padding: 0px;
  margin: 0px;
  overflow: auto;
  font-family: monospace;
  font-size: 110%;
  color: #000;
  width: auto;
}
.completions select option.context {
  color: #286090;
}
#kernel_logo_widget {
  float: right !important;
  float: right;
}
#kernel_logo_widget .current_kernel_logo {
  display: none;
  margin-top: -1px;
  margin-bottom: -1px;
  width: 32px;
  height: 32px;
}
#menubar {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin-top: 1px;
}
#menubar .navbar {
  border-top: 1px;
  border-radius: 0px 0px 2px 2px;
  margin-bottom: 0px;
}
#menubar .navbar-toggle {
  float: left;
  padding-top: 7px;
  padding-bottom: 7px;
  border: none;
}
#menubar .navbar-collapse {
  clear: left;
}
.nav-wrapper {
  border-bottom: 1px solid #e7e7e7;
}
i.menu-icon {
  padding-top: 4px;
}
ul#help_menu li a {
  overflow: hidden;
  padding-right: 2.2em;
}
ul#help_menu li a i {
  margin-right: -1.2em;
}
.dropdown-submenu {
  position: relative;
}
.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
}
.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}
.dropdown-submenu > a:after {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  content: "\f0da";
  float: right;
  color: #333333;
  margin-top: 2px;
  margin-right: -10px;
}
.dropdown-submenu > a:after.pull-left {
  margin-right: .3em;
}
.dropdown-submenu > a:after.pull-right {
  margin-left: .3em;
}
.dropdown-submenu:hover > a:after {
  color: #262626;
}
.dropdown-submenu.pull-left {
  float: none;
}
.dropdown-submenu.pull-left > .dropdown-menu {
  left: -100%;
  margin-left: 10px;
}
#notification_area {
  float: right !important;
  float: right;
  z-index: 10;
}
.indicator_area {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
}
#kernel_indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
  border-left: 1px solid;
}
#kernel_indicator .kernel_indicator_name {
  padding-left: 5px;
  padding-right: 5px;
}
#modal_indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
}
#readonly-indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
  margin-top: 2px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin-right: 0px;
  display: none;
}
.modal_indicator:before {
  width: 1.28571429em;
  text-align: center;
}
.edit_mode .modal_indicator:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f040";
}
.edit_mode .modal_indicator:before.pull-left {
  margin-right: .3em;
}
.edit_mode .modal_indicator:before.pull-right {
  margin-left: .3em;
}
.command_mode .modal_indicator:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ' ';
}
.command_mode .modal_indicator:before.pull-left {
  margin-right: .3em;
}
.command_mode .modal_indicator:before.pull-right {
  margin-left: .3em;
}
.kernel_idle_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f10c";
}
.kernel_idle_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_idle_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_busy_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f111";
}
.kernel_busy_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_busy_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_dead_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f1e2";
}
.kernel_dead_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_dead_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_disconnected_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f127";
}
.kernel_disconnected_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_disconnected_icon:before.pull-right {
  margin-left: .3em;
}
.notification_widget {
  color: #777;
  z-index: 10;
  background: rgba(240, 240, 240, 0.5);
  margin-right: 4px;
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.notification_widget:focus,
.notification_widget.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.notification_widget:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.notification_widget:active:hover,
.notification_widget.active:hover,
.open > .dropdown-toggle.notification_widget:hover,
.notification_widget:active:focus,
.notification_widget.active:focus,
.open > .dropdown-toggle.notification_widget:focus,
.notification_widget:active.focus,
.notification_widget.active.focus,
.open > .dropdown-toggle.notification_widget.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
  background-image: none;
}
.notification_widget.disabled:hover,
.notification_widget[disabled]:hover,
fieldset[disabled] .notification_widget:hover,
.notification_widget.disabled:focus,
.notification_widget[disabled]:focus,
fieldset[disabled] .notification_widget:focus,
.notification_widget.disabled.focus,
.notification_widget[disabled].focus,
fieldset[disabled] .notification_widget.focus {
  background-color: #fff;
  border-color: #ccc;
}
.notification_widget .badge {
  color: #fff;
  background-color: #333;
}
.notification_widget.warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.notification_widget.warning:focus,
.notification_widget.warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.notification_widget.warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.notification_widget.warning:active:hover,
.notification_widget.warning.active:hover,
.open > .dropdown-toggle.notification_widget.warning:hover,
.notification_widget.warning:active:focus,
.notification_widget.warning.active:focus,
.open > .dropdown-toggle.notification_widget.warning:focus,
.notification_widget.warning:active.focus,
.notification_widget.warning.active.focus,
.open > .dropdown-toggle.notification_widget.warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
  background-image: none;
}
.notification_widget.warning.disabled:hover,
.notification_widget.warning[disabled]:hover,
fieldset[disabled] .notification_widget.warning:hover,
.notification_widget.warning.disabled:focus,
.notification_widget.warning[disabled]:focus,
fieldset[disabled] .notification_widget.warning:focus,
.notification_widget.warning.disabled.focus,
.notification_widget.warning[disabled].focus,
fieldset[disabled] .notification_widget.warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.notification_widget.warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.notification_widget.success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.notification_widget.success:focus,
.notification_widget.success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.notification_widget.success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.notification_widget.success:active:hover,
.notification_widget.success.active:hover,
.open > .dropdown-toggle.notification_widget.success:hover,
.notification_widget.success:active:focus,
.notification_widget.success.active:focus,
.open > .dropdown-toggle.notification_widget.success:focus,
.notification_widget.success:active.focus,
.notification_widget.success.active.focus,
.open > .dropdown-toggle.notification_widget.success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
  background-image: none;
}
.notification_widget.success.disabled:hover,
.notification_widget.success[disabled]:hover,
fieldset[disabled] .notification_widget.success:hover,
.notification_widget.success.disabled:focus,
.notification_widget.success[disabled]:focus,
fieldset[disabled] .notification_widget.success:focus,
.notification_widget.success.disabled.focus,
.notification_widget.success[disabled].focus,
fieldset[disabled] .notification_widget.success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.notification_widget.success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.notification_widget.info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.notification_widget.info:focus,
.notification_widget.info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.notification_widget.info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.notification_widget.info:active:hover,
.notification_widget.info.active:hover,
.open > .dropdown-toggle.notification_widget.info:hover,
.notification_widget.info:active:focus,
.notification_widget.info.active:focus,
.open > .dropdown-toggle.notification_widget.info:focus,
.notification_widget.info:active.focus,
.notification_widget.info.active.focus,
.open > .dropdown-toggle.notification_widget.info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
  background-image: none;
}
.notification_widget.info.disabled:hover,
.notification_widget.info[disabled]:hover,
fieldset[disabled] .notification_widget.info:hover,
.notification_widget.info.disabled:focus,
.notification_widget.info[disabled]:focus,
fieldset[disabled] .notification_widget.info:focus,
.notification_widget.info.disabled.focus,
.notification_widget.info[disabled].focus,
fieldset[disabled] .notification_widget.info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.notification_widget.info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.notification_widget.danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.notification_widget.danger:focus,
.notification_widget.danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.notification_widget.danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.notification_widget.danger:active:hover,
.notification_widget.danger.active:hover,
.open > .dropdown-toggle.notification_widget.danger:hover,
.notification_widget.danger:active:focus,
.notification_widget.danger.active:focus,
.open > .dropdown-toggle.notification_widget.danger:focus,
.notification_widget.danger:active.focus,
.notification_widget.danger.active.focus,
.open > .dropdown-toggle.notification_widget.danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
  background-image: none;
}
.notification_widget.danger.disabled:hover,
.notification_widget.danger[disabled]:hover,
fieldset[disabled] .notification_widget.danger:hover,
.notification_widget.danger.disabled:focus,
.notification_widget.danger[disabled]:focus,
fieldset[disabled] .notification_widget.danger:focus,
.notification_widget.danger.disabled.focus,
.notification_widget.danger[disabled].focus,
fieldset[disabled] .notification_widget.danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.notification_widget.danger .badge {
  color: #d9534f;
  background-color: #fff;
}
div#pager {
  background-color: #fff;
  font-size: 14px;
  line-height: 20px;
  overflow: hidden;
  display: none;
  position: fixed;
  bottom: 0px;
  width: 100%;
  max-height: 50%;
  padding-top: 8px;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  /* Display over codemirror */
  z-index: 100;
  /* Hack which prevents jquery ui resizable from changing top. */
  top: auto !important;
}
div#pager pre {
  line-height: 1.21429em;
  color: #000;
  background-color: #f7f7f7;
  padding: 0.4em;
}
div#pager #pager-button-area {
  position: absolute;
  top: 8px;
  right: 20px;
}
div#pager #pager-contents {
  position: relative;
  overflow: auto;
  width: 100%;
  height: 100%;
}
div#pager #pager-contents #pager-container {
  position: relative;
  padding: 15px 0px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
div#pager .ui-resizable-handle {
  top: 0px;
  height: 8px;
  background: #f7f7f7;
  border-top: 1px solid #cfcfcf;
  border-bottom: 1px solid #cfcfcf;
  /* This injects handle bars (a short, wide = symbol) for 
        the resize handle. */
}
div#pager .ui-resizable-handle::after {
  content: '';
  top: 2px;
  left: 50%;
  height: 3px;
  width: 30px;
  margin-left: -15px;
  position: absolute;
  border-top: 1px solid #cfcfcf;
}
.quickhelp {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
  line-height: 1.8em;
}
.shortcut_key {
  display: inline-block;
  width: 21ex;
  text-align: right;
  font-family: monospace;
}
.shortcut_descr {
  display: inline-block;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
span.save_widget {
  margin-top: 6px;
}
span.save_widget span.filename {
  height: 1em;
  line-height: 1em;
  padding: 3px;
  margin-left: 16px;
  border: none;
  font-size: 146.5%;
  border-radius: 2px;
}
span.save_widget span.filename:hover {
  background-color: #e6e6e6;
}
span.checkpoint_status,
span.autosave_status {
  font-size: small;
}
@media (max-width: 767px) {
  span.save_widget {
    font-size: small;
  }
  span.checkpoint_status,
  span.autosave_status {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  span.checkpoint_status {
    display: none;
  }
  span.autosave_status {
    font-size: x-small;
  }
}
.toolbar {
  padding: 0px;
  margin-left: -5px;
  margin-top: 2px;
  margin-bottom: 5px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.toolbar select,
.toolbar label {
  width: auto;
  vertical-align: middle;
  margin-right: 2px;
  margin-bottom: 0px;
  display: inline;
  font-size: 92%;
  margin-left: 0.3em;
  margin-right: 0.3em;
  padding: 0px;
  padding-top: 3px;
}
.toolbar .btn {
  padding: 2px 8px;
}
.toolbar .btn-group {
  margin-top: 0px;
  margin-left: 5px;
}
#maintoolbar {
  margin-bottom: -3px;
  margin-top: -8px;
  border: 0px;
  min-height: 27px;
  margin-left: 0px;
  padding-top: 11px;
  padding-bottom: 3px;
}
#maintoolbar .navbar-text {
  float: none;
  vertical-align: middle;
  text-align: right;
  margin-left: 5px;
  margin-right: 0px;
  margin-top: 0px;
}
.select-xs {
  height: 24px;
}
.pulse,
.dropdown-menu > li > a.pulse,
li.pulse > a.dropdown-toggle,
li.pulse.open > a.dropdown-toggle {
  background-color: #F37626;
  color: white;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
/** WARNING IF YOU ARE EDITTING THIS FILE, if this is a .css file, It has a lot
 * of chance of beeing generated from the ../less/[samename].less file, you can
 * try to get back the less file by reverting somme commit in history
 **/
/*
 * We'll try to get something pretty, so we
 * have some strange css to have the scroll bar on
 * the left with fix button on the top right of the tooltip
 */
@-moz-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-moz-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*properties of tooltip after "expand"*/
.bigtooltip {
  overflow: auto;
  height: 200px;
  -webkit-transition-property: height;
  -webkit-transition-duration: 500ms;
  -moz-transition-property: height;
  -moz-transition-duration: 500ms;
  transition-property: height;
  transition-duration: 500ms;
}
/*properties of tooltip before "expand"*/
.smalltooltip {
  -webkit-transition-property: height;
  -webkit-transition-duration: 500ms;
  -moz-transition-property: height;
  -moz-transition-duration: 500ms;
  transition-property: height;
  transition-duration: 500ms;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 80px;
}
.tooltipbuttons {
  position: absolute;
  padding-right: 15px;
  top: 0px;
  right: 0px;
}
.tooltiptext {
  /*avoid the button to overlap on some docstring*/
  padding-right: 30px;
}
.ipython_tooltip {
  max-width: 700px;
  /*fade-in animation when inserted*/
  -webkit-animation: fadeOut 400ms;
  -moz-animation: fadeOut 400ms;
  animation: fadeOut 400ms;
  -webkit-animation: fadeIn 400ms;
  -moz-animation: fadeIn 400ms;
  animation: fadeIn 400ms;
  vertical-align: middle;
  background-color: #f7f7f7;
  overflow: visible;
  border: #ababab 1px solid;
  outline: none;
  padding: 3px;
  margin: 0px;
  padding-left: 7px;
  font-family: monospace;
  min-height: 50px;
  -moz-box-shadow: 0px 6px 10px -1px #adadad;
  -webkit-box-shadow: 0px 6px 10px -1px #adadad;
  box-shadow: 0px 6px 10px -1px #adadad;
  border-radius: 2px;
  position: absolute;
  z-index: 1000;
}
.ipython_tooltip a {
  float: right;
}
.ipython_tooltip .tooltiptext pre {
  border: 0;
  border-radius: 0;
  font-size: 100%;
  background-color: #f7f7f7;
}
.pretooltiparrow {
  left: 0px;
  margin: 0px;
  top: -16px;
  width: 40px;
  height: 16px;
  overflow: hidden;
  position: absolute;
}
.pretooltiparrow:before {
  background-color: #f7f7f7;
  border: 1px #ababab solid;
  z-index: 11;
  content: "";
  position: absolute;
  left: 15px;
  top: 10px;
  width: 25px;
  height: 25px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}
ul.typeahead-list i {
  margin-left: -10px;
  width: 18px;
}
ul.typeahead-list {
  max-height: 80vh;
  overflow: auto;
}
ul.typeahead-list > li > a {
  /** Firefox bug **/
  /* see https://github.com/jupyter/notebook/issues/559 */
  white-space: normal;
}
.cmd-palette .modal-body {
  padding: 7px;
}
.cmd-palette form {
  background: white;
}
.cmd-palette input {
  outline: none;
}
.no-shortcut {
  display: none;
}
.command-shortcut:before {
  content: "(command)";
  padding-right: 3px;
  color: #777777;
}
.edit-shortcut:before {
  content: "(edit)";
  padding-right: 3px;
  color: #777777;
}
#find-and-replace #replace-preview .match,
#find-and-replace #replace-preview .insert {
  background-color: #BBDEFB;
  border-color: #90CAF9;
  border-style: solid;
  border-width: 1px;
  border-radius: 0px;
}
#find-and-replace #replace-preview .replace .match {
  background-color: #FFCDD2;
  border-color: #EF9A9A;
  border-radius: 0px;
}
#find-and-replace #replace-preview .replace .insert {
  background-color: #C8E6C9;
  border-color: #A5D6A7;
  border-radius: 0px;
}
#find-and-replace #replace-preview {
  max-height: 60vh;
  overflow: auto;
}
#find-and-replace #replace-preview pre {
  padding: 5px 10px;
}
.terminal-app {
  background: #EEE;
}
.terminal-app #header {
  background: #fff;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.terminal-app .terminal {
  width: 100%;
  float: left;
  font-family: monospace;
  color: white;
  background: black;
  padding: 0.4em;
  border-radius: 2px;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
}
.terminal-app .terminal,
.terminal-app .terminal dummy-screen {
  line-height: 1em;
  font-size: 14px;
}
.terminal-app .terminal .xterm-rows {
  padding: 10px;
}
.terminal-app .terminal-cursor {
  color: black;
  background: white;
}
.terminal-app #terminado-container {
  margin-top: 20px;
}
/*# sourceMappingURL=style.min.css.map */
    </style>
<style type="text/css">
    .highlight .hll { background-color: #ffffcc }
.highlight  { background: #f8f8f8; }
.highlight .c { color: #408080; font-style: italic } /* Comment */
.highlight .err { border: 1px solid #FF0000 } /* Error */
.highlight .k { color: #008000; font-weight: bold } /* Keyword */
.highlight .o { color: #666666 } /* Operator */
.highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #BC7A00 } /* Comment.Preproc */
.highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */
.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */
.highlight .gd { color: #A00000 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #FF0000 } /* Generic.Error */
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.highlight .gi { color: #00A000 } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.highlight .gt { color: #0044DD } /* Generic.Traceback */
.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #008000 } /* Keyword.Pseudo */
.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #B00040 } /* Keyword.Type */
.highlight .m { color: #666666 } /* Literal.Number */
.highlight .s { color: #BA2121 } /* Literal.String */
.highlight .na { color: #7D9029 } /* Name.Attribute */
.highlight .nb { color: #008000 } /* Name.Builtin */
.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.highlight .no { color: #880000 } /* Name.Constant */
.highlight .nd { color: #AA22FF } /* Name.Decorator */
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #0000FF } /* Name.Function */
.highlight .nl { color: #A0A000 } /* Name.Label */
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #19177C } /* Name.Variable */
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #666666 } /* Literal.Number.Bin */
.highlight .mf { color: #666666 } /* Literal.Number.Float */
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
.highlight .sa { color: #BA2121 } /* Literal.String.Affix */
.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
.highlight .sc { color: #BA2121 } /* Literal.String.Char */
.highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */
.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.highlight .sx { color: #008000 } /* Literal.String.Other */
.highlight .sr { color: #BB6688 } /* Literal.String.Regex */
.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
.highlight .ss { color: #19177C } /* Literal.String.Symbol */
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
.highlight .fm { color: #0000FF } /* Name.Function.Magic */
.highlight .vc { color: #19177C } /* Name.Variable.Class */
.highlight .vg { color: #19177C } /* Name.Variable.Global */
.highlight .vi { color: #19177C } /* Name.Variable.Instance */
.highlight .vm { color: #19177C } /* Name.Variable.Magic */
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
    </style>
<style type="text/css">
    
/* Temporary definitions which will become obsolete with Notebook release 5.0 */
.ansi-black-fg { color: #3E424D; }
.ansi-black-bg { background-color: #3E424D; }
.ansi-black-intense-fg { color: #282C36; }
.ansi-black-intense-bg { background-color: #282C36; }
.ansi-red-fg { color: #E75C58; }
.ansi-red-bg { background-color: #E75C58; }
.ansi-red-intense-fg { color: #B22B31; }
.ansi-red-intense-bg { background-color: #B22B31; }
.ansi-green-fg { color: #00A250; }
.ansi-green-bg { background-color: #00A250; }
.ansi-green-intense-fg { color: #007427; }
.ansi-green-intense-bg { background-color: #007427; }
.ansi-yellow-fg { color: #DDB62B; }
.ansi-yellow-bg { background-color: #DDB62B; }
.ansi-yellow-intense-fg { color: #B27D12; }
.ansi-yellow-intense-bg { background-color: #B27D12; }
.ansi-blue-fg { color: #208FFB; }
.ansi-blue-bg { background-color: #208FFB; }
.ansi-blue-intense-fg { color: #0065CA; }
.ansi-blue-intense-bg { background-color: #0065CA; }
.ansi-magenta-fg { color: #D160C4; }
.ansi-magenta-bg { background-color: #D160C4; }
.ansi-magenta-intense-fg { color: #A03196; }
.ansi-magenta-intense-bg { background-color: #A03196; }
.ansi-cyan-fg { color: #60C6C8; }
.ansi-cyan-bg { background-color: #60C6C8; }
.ansi-cyan-intense-fg { color: #258F8F; }
.ansi-cyan-intense-bg { background-color: #258F8F; }
.ansi-white-fg { color: #C5C1B4; }
.ansi-white-bg { background-color: #C5C1B4; }
.ansi-white-intense-fg { color: #A1A6B2; }
.ansi-white-intense-bg { background-color: #A1A6B2; }

.ansi-bold { font-weight: bold; }

    </style>


<style type="text/css">
/* Overrides of notebook CSS for static HTML export */
.reveal {
  font-size: 160%;
  overflow-y: scroll;
}
.reveal pre {
  width: inherit;
  padding: 0.4em;
  margin: 0px;
  font-family: monospace, sans-serif;
  font-size: 80%;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0);
}
.reveal pre code {
  padding: 0px;
}
.reveal section img {
  border: 0px solid black;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0);
}
.reveal i {
  font-style: normal;
  font-family: FontAwesome;
  font-size: 2em;
}
.reveal .slides {
  text-align: left;
}
.reveal.fade {
  opacity: 1;
}
.reveal .progress {
  position: static;
}
div.input_area {
  padding: 0.06em;
}
div.code_cell {
  background-color: transparent;
}
div.prompt {
  width: 11ex;
  padding: 0.4em;
  margin: 0px;
  font-family: monospace, sans-serif;
  font-size: 80%;
  text-align: right;
}
div.output_area pre {
  font-family: monospace, sans-serif;
  font-size: 80%;
}
div.output_prompt {
  /* 5px right shift to account for margin in parent container */
  margin: 5px 5px 0 0;
}
div.text_cell.rendered .rendered_html {
  /* The H1 height seems miscalculated, we are just hidding the scrollbar */
  overflow-y: hidden;
}
a.anchor-link {
  /* There is still an anchor, we are only hidding it */
  display: none;
}
.rendered_html p {
  text-align: inherit;
}
</style>

<!-- Custom stylesheet, it must be in the same directory as the html file -->
<link rel="stylesheet" href="custom.css">

</head>


<body>


<div class="reveal">
<div class="slides">
<section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="Deep-Learning-for-NSL-KDD-dataset">Deep Learning for NSL KDD dataset<a class="anchor-link" href="#Deep-Learning-for-NSL-KDD-dataset">&#182;</a></h1><blockquote><p>NSL-KDD is a data set suggested to solve some of the inherent problems of the KDD'99 data set...
[<a href="http://www.unb.ca/cic/research/datasets/nsl.html">University of New Brunswick</a>]</p>
</blockquote>
<p>NSL KDD dataset has large number of columns which doesn't have significant correlation to decide whether current network session is <em>Normal</em> or an <em>Attack</em>. We performed Linear modeling of data and found that <strong>36% of columns</strong> <em>(considering 1e-5 as threshold for p value)</em> are significant in creating models of the dataset. Hence, we believe Deep Learning architectures like AutoEncoders and GANs will be best suitable.</p>
<p>We have special interest GAN networks due to their ability of learning about the data distribution by generating the distribution itself. We believe this can be utilized to generate Attack data distribution to help the discriminator model learn better.</p>

</div>
</div>
</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="Data-files">Data files<a class="anchor-link" href="#Data-files">&#182;</a></h2><blockquote>
<pre><code>* KDDTrain+.ARFF: The full NSL-KDD train set with binary labels in ARFF format  
* KDDTrain+.TXT: The full NSL-KDD train set including attack-type labels and difficulty level in CSV format  
* KDDTrain+_20Percent.ARFF: A 20% subset of the KDDTrain+.arff file  
* KDDTrain+_20Percent.TXT: A 20% subset of the KDDTrain+.txt file  
* KDDTest+.ARFF: The full NSL-KDD test set with binary labels in ARFF format  
* KDDTest+.TXT: The full NSL-KDD test set including attack-type labels and difficulty level in CSV format  
* KDDTest-21.ARFF: A subset of the KDDTest+.arff file which does not include records with difficulty level of 21 out of 21  
* KDDTest-21.TXT: A subset of the KDDTest+.txt file which does not include records with difficulty level of 21 out of 21  
</code></pre>
<p>[<a href="http://www.unb.ca/cic/research/datasets/nsl.html">University of New Brunswick</a>]</p>
</blockquote>

</div>
</div>
</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="Exploratory-Data-Analysis">Exploratory Data Analysis<a class="anchor-link" href="#Exploratory-Data-Analysis">&#182;</a></h1><h2 id="Feature-Selection">Feature Selection<a class="anchor-link" href="#Feature-Selection">&#182;</a></h2><p>We found that only 15 (out of 41) columns have P-values considering 1e-5 as threshold.</p>

</div>
</div>
</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[3]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">warnings</span>
<span class="n">warnings</span><span class="o">.</span><span class="n">filterwarnings</span><span class="p">(</span><span class="s1">&#39;ignore&#39;</span><span class="p">)</span>
<span class="n">results</span><span class="o">.</span><span class="n">pvalues</span><span class="o">.</span><span class="n">sort_values</span><span class="p">()</span><span class="o">.</span><span class="n">plot</span><span class="p">();</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt"></div>



<div class="output_png output_subarea ">
<img src="
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
Ih/ym/lbeOztbdQ1NVPTEKEh4oXI8QW9uOG0kZw0si9ThvWid9cccrJ0rIeIHKBQkYMs3raPH89d
x4nD+zBhcA+6ZmcydmAPZo7vr8OCReSQFCrygdrGCN94egVD+3TldzeerCsvisgRC3TbhZnNMrMN
ZrbZzO5s43Ezs/v8x1ea2fQg60t3d89dz/Z9tfzs8qkKFBE5KoH1HGaWCTwAnAcUAYvN7Hnn3NqY
0S4Axvp/M4CH/P8lzsprG3lxVSlvrN9FVX2EpuYo724v56bTR3HKcflhlyciSSrIxdGTgc3OuS0A
ZvYkcAkQGyqXAL93zjlgoZn1NrPBzrmSAOtMeM45GiJR6hqbaYhEqW/y/o86B0Bz1LG3ppE9VQ3s
q2mkoq6J8rpGquoj1DY2U1HXxLLt+2lqdozI78bAnrl0zcnkypOG8c2Pjw+5dSKSzIIMlQJgR8z9
Ij68FtLWOAVAu6GydU8NV/9mYbxqPCp+X97+47g2x3Mf/APNzhGJOiLNUaKu5XW9YY2RKI2RKPWR
ZuqbmqlvinIkMjOMXl2z6ZGbRdfsTLp3yeJzp47k09MK+MiQnvqBoojETVJuODezW4BbALoPHk1T
85F1sp3BOETHbAf998Fty/Cem51hZGVkkJVhB10JMSczg+xMIycrg9zsTO8vK4PcnExyszLpmpNJ
l6wMcrK85wKYGX2759Avrwv5eTn06JKl4BCRQAQZKsVA7JWZhvrDjnQcnHNzgDkAhYWF7ulbPxrf
SkVE5KgEefTXYmCsmY0ysxzgSuD5VuM8D3zOPwrsFKBC+1NERJJHYGsqzrmImd0OvAxkAo8459aY
2a3+47OBF4ELgc1ALXBDUPWJiMixC3SfinPuRbzgiB02O+a2A74UZE0iIhI/OnGTiIjEjUJFRETi
RqEiIiJxo1AREZG4UaiIiEjcmDvUOUYSnJlVARvCrqMT9QP2hF1EJ1Hbklcqty9d2jbCOdc/3m+Q
lKdpaWWDc64w7CI6i5ktSdX2qW3JK5Xbp7YdG23+EhGRuFGoiIhI3KRCqMwJu4BOlsrtU9uSVyq3
T207Bkm/o15ERBJHKqypiIhIglCopBkz+5SZTQq7jjCY2VfNrFvYdYiksqQLFTP7ipmtM7Mnwq6l
I2Z2vZkN6eT3OJpDwj8FfChUzCzz2Cs6tNY1H24bDmc8/zo8HU3TXwWOKVTM7L/M7NxjeY1Ek4pt
akvY7TSzmWZ21FcUjOn7is3s/jjX9u9mtsbMVprZcjOb4Q9/wsw2mNlqM3vEzLIP+WLOubj9AZnx
fL123mM9MLSN4Vmd/d4d1DQSWAf8BlgDvALMB5YChf44/YBt/u3rgWeBV4FtwO3AHcAyYCHQt4P3
mgf8ClgCfN1/7zeAlcDrwPCYmmKHjwfeAiJAo/++RcA9wLvAncA7rdq0qoM67gbW+q//c39Yf+Cv
eBdkWwyc5g//AfC4//5/8tv/vF/fm3hXVv4ZsBpYBVzhP28msMAfd2MHn/0G4Pf+Zz8CeMj/fNYA
/+mP9xW/3auAf/jDzgf+5bf/aSAv7GmpE6fRlGtTsrXTnw++cQzPX493NdzrgfvjWNep/nzQxb/f
Dxji377Qnz/Nn3dvO+TrHcYbfhP4in/7l8Ab/u2zgSeAauAXwArgdOAcvM5xFfBITKHbgP/0Z+BV
wAR/eH+8znUN8DDwPtCvnVpmx3QMX2ujsxrpd0Lv+n8f9Z+XATzofymv4l3T5fKYun4CLPc7oul4
FxJ7D7i11eewGK8TbemoRuKFyZ8A538xXYG3gXq8C41t8Ie1DpXNQA+//RUt7+V/xl/t4PuYBzwY
c//vwOf92zcCz7YzfBFe6D0GXA708tv+rZjXWg6M8m9/G/heOzXk++1qOdCjt///H4HT/dvDgXUx
M9NSoGtM+4vwwxO4zP9eMoGBwHZgMF6o1LTU1E4tI4EocErMsJbX7QHs9WtdDezGmz7f9Nu6DzjO
H/c9//tbAnwfbzrM8B/rDuwAsls+P3/4Sf53vQJ4x3+/TLyAbJlWvnAY81fr6eok/36u/95rgMn+
Y98FyoE6vz1XACfiTdu1QCXwl5hppWUBJJA2+d/ZPOAvfk1PcGA6uct/jdV4RyFZTJ2/9Otc59fw
nP/d7/LHvwL4nt++Wr/2ggRt5zZa9XV402kp3uXRlwNn+PXM9uveCFzUwfu17vvu94d/Em/eXga8
Bgw8in71UuDvh5EFXwP+Ox6hcgrwtH97gf8FZPtf3hfwOtPP+o/n+l/gOP/+7/E7SP+D/rJ/+4vA
w/7t+4Hv+Ldn+a/XZuNjXqdfO51VNyDXvz0WWOLfvhwvSDKAQcB+Dg6V22I69JUc6Ox3+cPPx58J
/Nd4AfiYP6FE8NJ8E/AUcC1eh7yVjtdUfhPTpu0cmEFuBH7VQfvnAWfG3N8DZPu3s4E97Qzf57d1
FX5Y+PdMl2rIAAAHjklEQVRHxLzWd4E7/dvvAmPbqSELb2Z8BG+CzPGH78abYVr+ioE8/3v6fszz
rwcejbn/S+DGmPuPAxfjzbj/OMT0ORLY2mrYrX792/A63yv94e/jTb/9gYvwOqi9fq01+CHoj/sc
cJZ/+woOTK+P4U1POcAW4CR/eE//c7kl5vPtgtdhtBmKtDNd+Y/9CPg58AAH5o/z8TqK38SMfwFe
h/Ie3jR2BfCHmGnlwYDbNBNvIWmoX+O/OLCg0TdmvMeBT8bUeY9/+9+AncBNwG/xFj7y8UJgHzDY
H+8V4M0Ebec22u7rfkDMmopfz0v+88f6bc09VN9HzJoK0IcDYXYz8Isj7Vfx5tHleMH2IDH9S8w4
2Xjz1BkdzY/OucPap7IUONHMegIN/odXiJe0C4BmvE0e4G1i2eqc2+jf/x1e59vimZjXHOnfPh14
EsA59xJeh38knnfO1fm3s4HfmNkqvM0ZLfsOTscLxqhzrhT4R+vX8P9fBSxyzlU558qABjPrjTcz
n483876Lt+Qx1n/OVrzNQA0x7WrG6ygiHNhvldvqPRtibkdj7kc59Olzag7xeFuieGth+4GrzOyu
Nl7rz8BnzWwc3oU4N7X1Qs65CHAy3lLaRXgzBnhtPcU5d4L/V+Ccq26n5sNtw+GM98E4ZjYK+Abe
Gsn5eN/FdWZ2Bt7nOhGvY74P7zNZ6pw7AW/p9NaY1/wzXocEcKV/P9Z4oMQ5txjAOVfpfy7nA58z
s+V4S5D5HJhWWutouvov4Dy8ee2nMeNPBD4PlAAn+I9PwFsifw1vaX5Aq3YE2SbwNqMWOeeieJ3V
SH/4WWa2yJ8/zwY+EvOc2HlwDV7fcg5eZ3gx3r7A3sAWM6sDzsTr0BOxndB2X9eWp/x+aRNe0E3o
YNy2DAVe9j/Tb3LgMz3sftWfR0/EC9Uy4M9mdn2r0R4E5jvnFhyqoEOGinOuCa/jvB5vdXEBcBYw
Bm9Vtd4513yo1/G1dJzNxO+8Y7GdztfwVpen4s1sOUdYV2zn3nI/Cy8gfhLTWY5xzv221XPhw+0q
wfuywFtC6gxv4804ANfgfT9tDV+Mt9lgBV6nOr31Cznn3sNrw3/w4RnxA2aWB/Ry3uWhv4b3eYO3
9PjlmPFOOMw2LACuMLNMM+uPtyDyzmE+t7WeeNNEhf9Xi7cE+CO872aTHyIz8NZUvug/LwOvE2nx
PDDLzPrifYdvHOb7G95Sasu0Mso590oH47Y3XeXjLUH24MACiQE/xFvb/jre2kkG3maV3/qvcbxz
7vyY94idP4JoE7QxT5hZLl7HdLlz7ni8ta3cNp4TBRr8BdPpeJvXb8cL0BLnXFf/r4tzbnSitbON
xw7V17lD3D+UX+OttRyPt+Wo9cLrYXHONTvn5jnnvo/3eV/W8piZfR9v7f6Ow3mtwz36awHe0t98
//atwDLnrxfF2ACMNLMx/v3r8LZfd+Qt4LMAZnY+3urc0eqFN+FF/fduOaLpLeAyM8sws4F4q65H
4mXgRr8zxcwKzGzAIZ7TgLe0cpuZLcNbbe0MXwZuMLOVeG3+t3aGP4HXUc/Cm/gm0PbE/me8TXhP
dfCePYAX/Nf+Jwcmtq8Ahf4RJGs5eMm/I3/D2+y4Aq8D+Ja/RnnEnHMr8Jb81+OtSb2Nt3b9M7xN
gpPNbKm/JnoT8De/HdOJWaL0l94WA/cCL7Sx4LQBGGxmJwGYWQ//CLWX8b7zbH/4ODPr3k65HU1X
/4sX7k/gHUzRMv4X8DZ3/AFv89AZeNP5dWaWb2bZZnZqO59NEG1qT0tnt8dvb4cLWf6Rk7V4C4mP
42+SNrML/ccHtHckV8jt7EiV345Yn/H7pdHAcRz5Gdd74W1mBm8NtsVh96tmNt7MYtfITsDbVIyZ
3Qx8HLjK71cP7VDbx/zcOAdoArr79zcCd/i3q9sYt70d9S37QgqBef7tAXhHJ63GW3opaXlOO7XE
vs4POHgb5VgOdE73tNSGF56zObCj/jXgvDZe73pijqpo9di/+W1ahddJjcbrhFbHjP8N4Af+7cvw
JpDl+Pt89Bfsnz8zrPS/g8X+dHcC3sLRCrzNLP/PH3ce/v6vmOdfjrfkeGbMsMc4eGfvQv+1FuKt
WWQAP/ank9V4m1p7dVBjW9PV54C/+o9n4m2KOdu//xDefqI6vKX4S/w2bfCH1QNvhdUmvAW2F2Lu
3w9c79/+Ed7a1VvAozHzygd1tjw/5rur9r+nQuBb/v2W9v84Qdu5jbb7unEcmB6PaEd97Oty8D6V
S/A2my3FW3Bqea/D7lfx1ube5sDRnM/E1B/xv7OW/aR3HWq+C/00LWbWBWh2zkX8JayHnLd5It7v
k+ecqzazfLwl9tPcUS4Ni4gcKzN7DC+Y/tIJrx1Iv9qWRLieynDgKf9Ha43A/+uk93nB3+meA/ww
0QPFzB4ATms1+F7n3KMB1/E3YFSrwd92zr0ccB35eEterZ3jnNsbZC0iSSCofvVDQl9TaYs6EEkl
ZnY83n6BWA3OuRlh1BMPqdimtqRSO4PqVxMyVEREJDkl3bm/REQkcSlUREQkbhQqIiISNwoVERGJ
G4WKiIjEzf8H/277R/4ChNYAAAAASUVORK5CYII=
"
>
</div>

</div>

</div>
</div>

</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[4]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Variables having P value lower than 1e-5&quot;</span><span class="p">)</span>
<span class="n">results</span><span class="o">.</span><span class="n">pvalues</span><span class="p">[</span><span class="n">results</span><span class="o">.</span><span class="n">pvalues</span> <span class="o">&lt;</span> <span class="mf">1e-5</span><span class="p">]</span><span class="o">.</span><span class="n">sort_values</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt"></div>

<div class="output_subarea output_stream output_stdout output_text">
<pre>Variables having P value lower than 1e-5
</pre>
</div>
</div>

<div class="output_area">
<div class="prompt output_prompt">Out[4]:</div>



<div class="output_text output_subarea output_execute_result">
<pre>wrong_fragment                 1.577002e-39
same_srv_rate                  2.913320e-16
service_urp_i                  6.079849e-11
service_http                   1.801443e-10
dst_host_same_srv_rate         1.897631e-10
service_smtp                   2.699004e-10
dst_host_srv_rerror_rate       3.418082e-10
dst_host_srv_count             1.270372e-08
dst_host_same_src_port_rate    3.700446e-08
diff_srv_rate                  3.464595e-07
dst_host_srv_diff_host_rate    7.880064e-07
protocol_type_udp              1.163489e-06
service_IRC                    1.688161e-06
dst_host_count                 3.587908e-06
protocol_type_tcp              8.879575e-06
dtype: float64</pre>
</div>

</div>

</div>
</div>

</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="TSNE">TSNE<a class="anchor-link" href="#TSNE">&#182;</a></h2><ul>
<li>We found that Normal and Attack data are:<ul>
<li>Not clearly seperable.</li>
<li>Not linearly sepearable </li>
</ul>
</li>
</ul>
<p><img src="images/TSNE-Train+Dataset.png" alt=""></p>

</div>
</div>
</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="Evaluating-Dense-Network">Evaluating Dense Network<a class="anchor-link" href="#Evaluating-Dense-Network">&#182;</a></h1><p><img src="images/NSL_KDD_FullyConnectedNetwork.jpg" alt="Fully Connected Network"></p>
<p>We used Fully connected Neural Network to observe the behavior of model training on NSL KDD data under various hyper parameter configurations as stated below:</p>
<ul>
<li><p>Feature Reduction<br>
We tried to reduce the number of features to understand how much the data can be compressed while still able to generalize enough for test dataset.</p>
</li>
<li><p>Number of Hidden layers<br>
  We wanted to observe how many layers of dense networks may be required to capture the non-leanarity of the data. This understanding may prove useful while training other deep learning architectures.</p>
</li>
<li>Epochs, learning rate<br>
  We wanted to get an understanding of how much time/resources will be required to train the model.</li>
</ul>

</div>
</div>
</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[10]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">evaluate</span><span class="p">(</span><span class="s2">&quot;dataset/tf_dense_only_nsl_kdd_predictions.pkl&quot;</span><span class="p">,</span>
         <span class="s2">&quot;dataset/tf_dense_only_nsl_kdd_scores.pkl&quot;</span><span class="p">,</span> <span class="s2">&quot;DenseNetwork&quot;</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt"></div>

<div class="output_subarea output_stream output_stdout output_text">
<pre>Best model choosen is: Epochs:20 Number of Features:32 Hidden Layers:4
</pre>
</div>
</div>

<div class="output_area">
<div class="prompt output_prompt">Out[10]:</div>


<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>epoch</th>
      <th>no_of_features</th>
      <th>hidden_layers</th>
      <th>train_score</th>
      <th>test_score</th>
      <th>time_taken</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>6</th>
      <td>20</td>
      <td>32</td>
      <td>4</td>
      <td>0.892046</td>
      <td>0.897933</td>
      <td>19.431615</td>
    </tr>
    <tr>
      <th>5</th>
      <td>20</td>
      <td>8</td>
      <td>4</td>
      <td>0.869027</td>
      <td>0.885823</td>
      <td>22.556436</td>
    </tr>
    <tr>
      <th>1</th>
      <td>20</td>
      <td>8</td>
      <td>2</td>
      <td>0.905382</td>
      <td>0.881254</td>
      <td>17.043705</td>
    </tr>
    <tr>
      <th>11</th>
      <td>20</td>
      <td>64</td>
      <td>6</td>
      <td>0.901334</td>
      <td>0.881033</td>
      <td>39.989143</td>
    </tr>
    <tr>
      <th>3</th>
      <td>20</td>
      <td>64</td>
      <td>2</td>
      <td>0.919432</td>
      <td>0.862757</td>
      <td>8.935693</td>
    </tr>
    <tr>
      <th>0</th>
      <td>20</td>
      <td>4</td>
      <td>2</td>
      <td>0.943007</td>
      <td>0.845369</td>
      <td>16.299912</td>
    </tr>
    <tr>
      <th>4</th>
      <td>20</td>
      <td>4</td>
      <td>4</td>
      <td>0.850294</td>
      <td>0.835788</td>
      <td>9.173420</td>
    </tr>
    <tr>
      <th>10</th>
      <td>20</td>
      <td>32</td>
      <td>6</td>
      <td>0.945309</td>
      <td>0.829755</td>
      <td>78.154274</td>
    </tr>
    <tr>
      <th>7</th>
      <td>20</td>
      <td>64</td>
      <td>4</td>
      <td>0.948166</td>
      <td>0.817158</td>
      <td>39.293368</td>
    </tr>
    <tr>
      <th>2</th>
      <td>20</td>
      <td>32</td>
      <td>2</td>
      <td>0.956342</td>
      <td>0.788769</td>
      <td>21.211315</td>
    </tr>
    <tr>
      <th>9</th>
      <td>20</td>
      <td>8</td>
      <td>6</td>
      <td>0.870773</td>
      <td>0.668604</td>
      <td>58.356642</td>
    </tr>
    <tr>
      <th>8</th>
      <td>20</td>
      <td>4</td>
      <td>6</td>
      <td>0.545960</td>
      <td>0.430979</td>
      <td>41.594095</td>
    </tr>
  </tbody>
</table>
</div>
</div>

</div>

<div class="output_area">
<div class="prompt"></div>



<div class="output_png output_subarea ">
<img src="
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
Xud1ngAAAABJRU5ErkJggg==
"
>
</div>

</div>

</div>
</div>

</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="Variational-Autoencoders">Variational Autoencoders<a class="anchor-link" href="#Variational-Autoencoders">&#182;</a></h1><p>Variational Autoencoders can reduce the features by initially compressing the data and then calculating mean and variance of the compressed data features. Mean and variance is used to approximate data distribution (Z) of each compressed feature. The model learns by optimzing loss occured while reproducing the actual data using the Z data distribution.</p>
<h2 id="Predict-using-Softmax">Predict using Softmax<a class="anchor-link" href="#Predict-using-Softmax">&#182;</a></h2><p>In order to predict whether current network session is Normal or Attack, we coupled Softmax with layer producing Z data distribution.</p>
<p><img src="images/VAE_withSoftmax.jpg" alt="VAE with Softmax"></p>

</div>
</div>
</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[11]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">evaluate</span><span class="p">(</span><span class="s2">&quot;dataset/tf_vae_dense_trained_together_nsl_kdd_predictions.pkl&quot;</span><span class="p">,</span>
         <span class="s2">&quot;dataset/tf_vae_dense_trained_together_nsl_kdd_scores.pkl&quot;</span><span class="p">,</span> <span class="s2">&quot;VAE_with_Softmax&quot;</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt"></div>

<div class="output_subarea output_stream output_stdout output_text">
<pre>Best model choosen is: Epochs:20 Number of Features:8 Hidden Layers:6
</pre>
</div>
</div>

<div class="output_area">
<div class="prompt output_prompt">Out[11]:</div>


<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>epoch</th>
      <th>no_of_features</th>
      <th>hidden_layers</th>
      <th>train_score</th>
      <th>test_score</th>
      <th>time_taken</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>9</th>
      <td>20</td>
      <td>8</td>
      <td>6</td>
      <td>0.896606</td>
      <td>0.892832</td>
      <td>18.282973</td>
    </tr>
    <tr>
      <th>2</th>
      <td>20</td>
      <td>16</td>
      <td>2</td>
      <td>0.910498</td>
      <td>0.884315</td>
      <td>52.052245</td>
    </tr>
    <tr>
      <th>8</th>
      <td>20</td>
      <td>4</td>
      <td>6</td>
      <td>0.900099</td>
      <td>0.883960</td>
      <td>79.896244</td>
    </tr>
    <tr>
      <th>7</th>
      <td>20</td>
      <td>32</td>
      <td>4</td>
      <td>0.876999</td>
      <td>0.877395</td>
      <td>109.307383</td>
    </tr>
    <tr>
      <th>11</th>
      <td>20</td>
      <td>32</td>
      <td>6</td>
      <td>0.872832</td>
      <td>0.858321</td>
      <td>56.983235</td>
    </tr>
    <tr>
      <th>4</th>
      <td>20</td>
      <td>4</td>
      <td>4</td>
      <td>0.878309</td>
      <td>0.857967</td>
      <td>36.212009</td>
    </tr>
    <tr>
      <th>1</th>
      <td>20</td>
      <td>8</td>
      <td>2</td>
      <td>0.831117</td>
      <td>0.841466</td>
      <td>46.666873</td>
    </tr>
    <tr>
      <th>6</th>
      <td>20</td>
      <td>16</td>
      <td>4</td>
      <td>0.930304</td>
      <td>0.836985</td>
      <td>8.436142</td>
    </tr>
    <tr>
      <th>10</th>
      <td>20</td>
      <td>16</td>
      <td>6</td>
      <td>0.882993</td>
      <td>0.821327</td>
      <td>9.489717</td>
    </tr>
    <tr>
      <th>0</th>
      <td>20</td>
      <td>4</td>
      <td>2</td>
      <td>0.902123</td>
      <td>0.810504</td>
      <td>14.201883</td>
    </tr>
    <tr>
      <th>3</th>
      <td>20</td>
      <td>32</td>
      <td>2</td>
      <td>0.925581</td>
      <td>0.773554</td>
      <td>4.045676</td>
    </tr>
    <tr>
      <th>5</th>
      <td>20</td>
      <td>8</td>
      <td>4</td>
      <td>0.877555</td>
      <td>0.771735</td>
      <td>156.046256</td>
    </tr>
  </tbody>
</table>
</div>
</div>

</div>

<div class="output_area">
<div class="prompt"></div>



<div class="output_png output_subarea ">
<img src="
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
"
>
</div>

</div>

</div>
</div>

</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="Include-dependent-Variable-as-feature.">Include dependent Variable as feature.<a class="anchor-link" href="#Include-dependent-Variable-as-feature.">&#182;</a></h2><p>Another approach we took is to train VAE to reproduce Normal/Attack labels itself during Training cylce. While testing, we would replace the labels with <strong>random values(0~1)</strong> and use VAE to generate correct values of the labels.</p>
<p><img src="images/VAE_withLabel.jpg" alt="VAE with Softmax"></p>

</div>
</div>
</div></section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="using-VAE-Loss">using VAE Loss<a class="anchor-link" href="#using-VAE-Loss">&#182;</a></h2><p>&lt; explain the variation &gt;</p>

</div>
</div>
</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[12]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">evaluate</span><span class="p">(</span><span class="s2">&quot;dataset/tf_vae_only_vae_loss_nsl_kdd_predictions.pkl&quot;</span><span class="p">,</span>
         <span class="s2">&quot;dataset/tf_vae_only_vae_loss_nsl_kdd_scores.pkl&quot;</span><span class="p">,</span> <span class="s2">&quot;VAE_with_label&quot;</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt"></div>

<div class="output_subarea output_stream output_stdout output_text">
<pre>Best model choosen is: Epochs:20 Number of Features:4 Hidden Layers:6
</pre>
</div>
</div>

<div class="output_area">
<div class="prompt output_prompt">Out[12]:</div>


<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>epoch</th>
      <th>no_of_features</th>
      <th>hidden_layers</th>
      <th>train_score</th>
      <th>test_score</th>
      <th>time_taken</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>8</th>
      <td>20</td>
      <td>4</td>
      <td>6</td>
      <td>0.856326</td>
      <td>0.869633</td>
      <td>58.462562</td>
    </tr>
    <tr>
      <th>4</th>
      <td>20</td>
      <td>4</td>
      <td>4</td>
      <td>0.865375</td>
      <td>0.862535</td>
      <td>62.101604</td>
    </tr>
    <tr>
      <th>11</th>
      <td>20</td>
      <td>32</td>
      <td>6</td>
      <td>0.904509</td>
      <td>0.845413</td>
      <td>7.644736</td>
    </tr>
    <tr>
      <th>1</th>
      <td>20</td>
      <td>8</td>
      <td>2</td>
      <td>0.920067</td>
      <td>0.842264</td>
      <td>63.524530</td>
    </tr>
    <tr>
      <th>10</th>
      <td>20</td>
      <td>16</td>
      <td>6</td>
      <td>0.778060</td>
      <td>0.840845</td>
      <td>73.350619</td>
    </tr>
    <tr>
      <th>9</th>
      <td>20</td>
      <td>8</td>
      <td>6</td>
      <td>0.844658</td>
      <td>0.833126</td>
      <td>77.473783</td>
    </tr>
    <tr>
      <th>6</th>
      <td>20</td>
      <td>16</td>
      <td>4</td>
      <td>0.905223</td>
      <td>0.824876</td>
      <td>135.412426</td>
    </tr>
    <tr>
      <th>3</th>
      <td>20</td>
      <td>32</td>
      <td>2</td>
      <td>0.950548</td>
      <td>0.823279</td>
      <td>11.461275</td>
    </tr>
    <tr>
      <th>7</th>
      <td>20</td>
      <td>32</td>
      <td>4</td>
      <td>0.903477</td>
      <td>0.809218</td>
      <td>36.302240</td>
    </tr>
    <tr>
      <th>0</th>
      <td>20</td>
      <td>4</td>
      <td>2</td>
      <td>0.943086</td>
      <td>0.790232</td>
      <td>21.424091</td>
    </tr>
    <tr>
      <th>5</th>
      <td>20</td>
      <td>8</td>
      <td>4</td>
      <td>0.911256</td>
      <td>0.772401</td>
      <td>13.949796</td>
    </tr>
    <tr>
      <th>2</th>
      <td>20</td>
      <td>16</td>
      <td>2</td>
      <td>0.953564</td>
      <td>0.767876</td>
      <td>5.662451</td>
    </tr>
  </tbody>
</table>
</div>
</div>

</div>

<div class="output_area">
<div class="prompt"></div>



<div class="output_png output_subarea ">
<img src="
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
AAAAAElFTkSuQmCC
"
>
</div>

</div>

</div>
</div>

</div></section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="Using-MSE-Loss">Using MSE Loss<a class="anchor-link" href="#Using-MSE-Loss">&#182;</a></h2>
</div>
</div>
</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[13]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">evaluate</span><span class="p">(</span><span class="s2">&quot;dataset/tf_vae_only_nsl_kdd_predictions.pkl&quot;</span><span class="p">,</span>
         <span class="s2">&quot;dataset/tf_vae_only_nsl_kdd_scores.pkl&quot;</span><span class="p">,</span> <span class="s2">&quot;VAE_with_label_MSE_loss&quot;</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt"></div>

<div class="output_subarea output_stream output_stdout output_text">
<pre>Best model choosen is: Epochs:20 Number of Features:8 Hidden Layers:4
</pre>
</div>
</div>

<div class="output_area">
<div class="prompt output_prompt">Out[13]:</div>


<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>epoch</th>
      <th>no_of_features</th>
      <th>hidden_layers</th>
      <th>train_score</th>
      <th>test_score</th>
      <th>time_taken</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>5</th>
      <td>20</td>
      <td>8</td>
      <td>4</td>
      <td>0.942610</td>
      <td>0.895848</td>
      <td>58.912110</td>
    </tr>
    <tr>
      <th>8</th>
      <td>20</td>
      <td>4</td>
      <td>6</td>
      <td>0.909906</td>
      <td>0.877661</td>
      <td>155.164080</td>
    </tr>
    <tr>
      <th>9</th>
      <td>20</td>
      <td>8</td>
      <td>6</td>
      <td>0.927290</td>
      <td>0.831396</td>
      <td>83.473590</td>
    </tr>
    <tr>
      <th>3</th>
      <td>20</td>
      <td>32</td>
      <td>2</td>
      <td>0.949992</td>
      <td>0.829888</td>
      <td>48.012730</td>
    </tr>
    <tr>
      <th>0</th>
      <td>20</td>
      <td>4</td>
      <td>2</td>
      <td>0.955945</td>
      <td>0.828691</td>
      <td>19.451182</td>
    </tr>
    <tr>
      <th>6</th>
      <td>20</td>
      <td>16</td>
      <td>4</td>
      <td>0.844975</td>
      <td>0.827848</td>
      <td>101.502000</td>
    </tr>
    <tr>
      <th>4</th>
      <td>20</td>
      <td>4</td>
      <td>4</td>
      <td>0.959200</td>
      <td>0.822392</td>
      <td>40.326999</td>
    </tr>
    <tr>
      <th>11</th>
      <td>20</td>
      <td>32</td>
      <td>6</td>
      <td>0.933323</td>
      <td>0.821993</td>
      <td>69.000163</td>
    </tr>
    <tr>
      <th>7</th>
      <td>20</td>
      <td>32</td>
      <td>4</td>
      <td>0.953008</td>
      <td>0.813831</td>
      <td>6.107059</td>
    </tr>
    <tr>
      <th>10</th>
      <td>20</td>
      <td>16</td>
      <td>6</td>
      <td>0.947214</td>
      <td>0.806246</td>
      <td>8.385378</td>
    </tr>
    <tr>
      <th>1</th>
      <td>20</td>
      <td>8</td>
      <td>2</td>
      <td>0.938800</td>
      <td>0.802874</td>
      <td>52.740351</td>
    </tr>
    <tr>
      <th>2</th>
      <td>20</td>
      <td>16</td>
      <td>2</td>
      <td>0.966423</td>
      <td>0.794491</td>
      <td>10.471723</td>
    </tr>
  </tbody>
</table>
</div>
</div>

</div>

<div class="output_area">
<div class="prompt"></div>



<div class="output_png output_subarea ">
<img src="
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
D2i5GcIAAAAASUVORK5CYII=
"
>
</div>

</div>

</div>
</div>

</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="LSTM-Autoencoder-Model">LSTM Autoencoder Model<a class="anchor-link" href="#LSTM-Autoencoder-Model">&#182;</a></h1><p>LSTM Autoencoder, aka Seq2Seq, model is generally used to predict sequences of numbers (time dependent) given another sequence of numbers. LSTM encoders generates a context vector using input sequence which is passed on to decoder to generate the output.<br>
We coupled LSTM decoder cells with Softmax layer to generate probability whether current session is Normal or Attack</p>
<p><img src="images/LSTMseq2seq_withsoftmax.jpg" alt="LSTM Encoder Decoder Model"></p>

</div>
</div>
</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[14]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#evaluate(&quot;dataset/keras_lstm_nsl_kdd_predictions.pkl&quot;,</span>
<span class="c1">#         &quot;dataset/keras_lstm_nsl_kdd_scores.pkl&quot;, &quot;VAE_with_label_MSE_loss&quot;)</span>
</pre></div>

</div>
</div>
</div>

</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="Generative-Adversarial-Networks">Generative Adversarial Networks<a class="anchor-link" href="#Generative-Adversarial-Networks">&#182;</a></h1><h2 id="General-Concept">General Concept<a class="anchor-link" href="#General-Concept">&#182;</a></h2><p>GANs utilizes two networks, Generator and Discriminator, to learn about data distribution by generating the data itself.</p>
<ul>
<li>Generator Network is responsible to produce data of interest using random values.</li>
<li>Discriminator Network is responsible to identify between fake data produced by Generator and Actual sample of data.</li>
</ul>
<p>The optimized state of GANs is when Generator starts to produce enough realistic data so discriminator cannot distinguish between real data and generated data</p>
<p><img src="images/NSL_KDD_GAN_original_idea.jpg" alt="Generative Advarsarial Networks"></p>

</div>
</div>
</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="GANs---For-Hypothesis-testing">GANs - For Hypothesis testing<a class="anchor-link" href="#GANs---For-Hypothesis-testing">&#182;</a></h2><p>We suggest a learning model where GANs can be used for Hypothesis testing. Assume we have 2 data distributions D1 and D2:</p>
<ul>
<li>Generator will be responsible to produce D2 distribution using random values</li>
<li>Discriminiator will be responsible to distinguish between D1 and D2 distributions.  </li>
</ul>
<p>Basically, discriminator will output probability between 0~1 whether current data is D1 or not. In this way we can decide a significance level based on which it can be decided to either Accept or Reject Null hypothesis i.e. whether current data is D1 or not.</p>
<p><img src="images/NSL_KDD_GAN_initial_state.jpg" alt="GAN_hypo_optim_state">
<img src="images/NSL_KDD_GAN_hypo_optim_state.jpg" alt="GAN_hypo_optim_state"></p>

</div>
</div>
</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="GANs-for-NSL-KDD-dataset">GANs for NSL KDD dataset<a class="anchor-link" href="#GANs-for-NSL-KDD-dataset">&#182;</a></h3><p><img src="images/NSL_KDD_GAN_attack_hypothesis.jpg" alt="GANs for NSL KDD dataset "></p>

</div>
</div>
</div></section></section><section><section>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="Compare-Results">Compare Results<a class="anchor-link" href="#Compare-Results">&#182;</a></h1>
</div>
</div>
</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[18]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">accumulate_test_scores</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt output_prompt">Out[18]:</div>


<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>DenseNetwork_test_score</th>
      <th>VAE_with_Softmax_test_score</th>
      <th>VAE_with_label_test_score</th>
      <th>VAE_with_label_MSE_loss_test_score</th>
    </tr>
    <tr>
      <th>param</th>
      <th></th>
      <th></th>
      <th></th>
      <th></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>epoch:20_features:4_layers:2</th>
      <td>0.845369</td>
      <td>0.810504</td>
      <td>0.790232</td>
      <td>0.828691</td>
    </tr>
    <tr>
      <th>epoch:20_features:8_layers:2</th>
      <td>0.881254</td>
      <td>0.841466</td>
      <td>0.842264</td>
      <td>0.802874</td>
    </tr>
    <tr>
      <th>epoch:20_features:16_layers:2</th>
      <td>0.788769</td>
      <td>0.884315</td>
      <td>0.767876</td>
      <td>0.794491</td>
    </tr>
    <tr>
      <th>epoch:20_features:32_layers:2</th>
      <td>0.862757</td>
      <td>0.773554</td>
      <td>0.823279</td>
      <td>0.829888</td>
    </tr>
    <tr>
      <th>epoch:20_features:4_layers:4</th>
      <td>0.835788</td>
      <td>0.857967</td>
      <td>0.862535</td>
      <td>0.822392</td>
    </tr>
    <tr>
      <th>epoch:20_features:8_layers:4</th>
      <td>0.885823</td>
      <td>0.771735</td>
      <td>0.772401</td>
      <td>0.895848</td>
    </tr>
    <tr>
      <th>epoch:20_features:16_layers:4</th>
      <td>0.897933</td>
      <td>0.836985</td>
      <td>0.824876</td>
      <td>0.827848</td>
    </tr>
    <tr>
      <th>epoch:20_features:32_layers:4</th>
      <td>0.817158</td>
      <td>0.877395</td>
      <td>0.809218</td>
      <td>0.813831</td>
    </tr>
    <tr>
      <th>epoch:20_features:4_layers:6</th>
      <td>0.430979</td>
      <td>0.883960</td>
      <td>0.869633</td>
      <td>0.877661</td>
    </tr>
    <tr>
      <th>epoch:20_features:8_layers:6</th>
      <td>0.668604</td>
      <td>0.892832</td>
      <td>0.833126</td>
      <td>0.831396</td>
    </tr>
    <tr>
      <th>epoch:20_features:16_layers:6</th>
      <td>0.829755</td>
      <td>0.821327</td>
      <td>0.840845</td>
      <td>0.806246</td>
    </tr>
    <tr>
      <th>epoch:20_features:32_layers:6</th>
      <td>0.881033</td>
      <td>0.858321</td>
      <td>0.845413</td>
      <td>0.821993</td>
    </tr>
  </tbody>
</table>
</div>
</div>

</div>

</div>
</div>

</div></section><section>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[19]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">f</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">figure</span><span class="p">()</span>
<span class="n">accumulate_test_scores</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">kind</span><span class="o">=</span><span class="s1">&#39;bar&#39;</span><span class="p">,</span> <span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">15</span><span class="p">,</span><span class="mi">4</span><span class="p">),</span> <span class="n">ax</span><span class="o">=</span><span class="n">f</span><span class="o">.</span><span class="n">gca</span><span class="p">(),</span><span class="n">grid</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">legend</span><span class="p">(</span><span class="n">loc</span><span class="o">=</span><span class="s1">&#39;center left&#39;</span><span class="p">,</span> <span class="n">bbox_to_anchor</span><span class="o">=</span><span class="p">(</span><span class="mf">1.0</span><span class="p">,</span> <span class="mf">0.5</span><span class="p">))</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">
<div class="prompt"></div>



<div class="output_png output_subarea ">
<img src="
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
85mkjoZhuBuG4S2pnaSrpzcFAAAAALjE09OzPD09PXXHjh0pX331VeaqVav8nn322Ruv1PUDAwNP
TZgwodmFnDNnzpzA4uLiOn0akMNRe7KssunTp19Qmyt7//33G+/du7fexZ5/ocrLy1VWVnalLndN
qfVNZJqmQ9ITkv6jnxMfC03TTDEMY4RhGCPOlEmT9IWkrZI26OfHBCdfvmYDAAAAAC634OBgx9y5
c7Pee++9puXl5XI4HBo+fHjzqKioCKvVan/llVcaS9Ly5ct927ZtG56QkPCbli1bRvbu3btlefnP
gzoef/zx4FatWkVarVb7sGHDmkvS/v373Xv06NEqKioqIioqKmLlypUNKq55++23F2ZmZtbfsmWL
Z9X2LFmypOFvf/tbm91uj7jrrrt+U1hY6DZx4sSmhw4dqte5c2dru3btrO+++26jIUOGNJekl156
qWnz5s2jJSk1NdXjlltusUnSZ5995hsREWG3Wq32fv36hZ44ccI4c7/RI0eODLbb7RHvvvtuo4rr
lpWVqW/fvqFPPfWU02TR448/HlxaWupms9nsvXv3bilJM2fO9I+Ojo6w2Wz2AQMG3ORwOORwONS3
b9/QsLCwSKvVan/xxRebvvfee42Sk5O9Bw8e/BubzWYvLi42qrtG1ThmZ2e7d+/evVV4eLg9PDzc
vmrVqgaS9MILLwSGhYVFhoWFRU6YMKGpJGVkZHiEhoZG9enTJ9RqtUbu3LnTw1k8L+gNch1yZbqN
TNP8XNLnVfbNrrL9iqRX6q5pAAAAAIBfmt1uP1VWVqacnBz3jz/++AY/P7+y5OTktBMnThi33nqr
rVevXsckKS0trf7mzZt3hYaGno6NjbWtWrXKJyYm5sTnn3/eaNeuXclubm46cuSIRZKGDx8e8swz
zxzs0aNH8fbt2z169OgRtmvXrhRJcnNz06hRo3JffPHFZkuWLMmqaMeBAwfcJ0+e3Oybb77JbNiw
YfnYsWODXnrppcBXX331wKxZswLXrFmT2axZM8fevXvd//73vwdJ0rp163xuuOEGx+7du+v997//
9Y2Pjy86fvy4MXz48JYrV67MaN26dWmfPn1CX3nllSZ//etfD0lSQECAIzU1NU2S5s6d2/T06dPG
vffe29Jut594+eWXnU6nmTlzZs4///nPpunp6amStGnTJq9Fixb5JyUlpXt6epoPPfRQi9mzZwfE
xMScOHDgQL3t27enSNKRI0csjRs3Lps1a1bTmqb15ObmWpzFccSIES06depU9Ne//nWnw+FQYWGh
Ze3atd4ffvhhwMaNG9NM01RsbGzE7bffXtS4ceOyvXv3er7zzju7b7/99qya4lknb5xrlEtJEgAA
AAAAvvzyy4bp6eneS5cubSRJRUVFltTUVC8PDw8zOjq6pFWrVqclKTIy8vjOnTs9unXrVuzp6Vne
v3//0J49ex7t379/oSStW7eu4fbt2+tX1FtcXGypPIph+PDhea+++mqz9PR0j4p9q1evbrBz506v
tm3b2iTp9OnTRmxsbHHVNrZo0cJx/Phxt4KCArf9+/d79OvXL2/lypW+3377rc8f/vCHo1u2bPFq
3rx5aevWrUsl6ZFHHsmbMWNGU0mHJGnw4MEFlet7/PHHb7r33nvzq0uQOPPFF1/4Jicne8fExERI
0smTJ92aNm3q6N+//9Hs7GzPhx9+OKRXr16Fffr0OeZKfQEBAWXO4rh+/XrfRYsW7ZYkd3d3BQQE
lK1evdrn7rvvPtqwYcNySfr9739f8PXXX/v269fvaLNmzU7dfvvtJRcSz18bkiQAAAAAgGqlpqZ6
WCwWBQcHO0zTNKZNm7a3b9++53y5X758ua+np+fZxwJZLBY5HA6jXr162rx5c9rSpUsbLlq0qNGs
WbOafv/995mmaWrTpk1p3t7eTh8lVK9ePT3xxBO5EyZMCKrYZ5qmOnbseGzZsmW1PtopLi6ueMaM
GY1btWp1smvXrsVvvfVW440bN/rMnDlzX2ZmpkdN51Zd/DUuLq547dq1DY8fP36wuvZWZZqm0a9f
v7wZM2ZUfeiJkpOTUz/55JOGs2fPbvLxxx/7/+tf/8qqrb7q4uhKWyrz9vY+e28XEs9fk1/9fCMA
AAAAgHP79+93Hzp06E2PPvroITc3N3Xv3r1w1qxZTUpLSw1J2rp1q+exY8eq/V5ZWFjolp+fb+nf
v3/h7Nmzs9PT070lqWPHjsemTJnStKLc+vXr61c994knnsj79ttvG+bn57tLUpcuXUqSkpJ8kpOT
PSXp2LFjblu3bvWUpAYNGpRVHonSsWPH4hkzZgR26tSpuEOHDsfXr1/v6+HhUR4QEFAWExNzMicn
x6OinsTExIBOnToVVXcPw4cPP3LnnXcW9uzZs9Xp09U/fMbd3d2siEtCQsKx5cuXN8rJyXGXpIMH
D1oyMzM9Dhw44F5WVqZHHnnk6JQpU3K2bdvmLUk+Pj5lhYWF1T4+qLo43nbbbUWvvPJKE+nnhWbz
8vIsXbt2Lf78889vKCoqcjt27Jjb559/3qhr167n3V9N8fw1YyQJAAAAAFylXHlkb12rWIC04hHA
/fv3z3v++ecPStLTTz99JCsryzM6OjrCNE3D39//9Oeff76zurqOHj1q6dmz580VyYOXXnopW5Le
euut7CFDhrSwWq32srIyo127dkUdOnTYW/lcLy8vc9iwYYfGjx8fIkk33nijY86cOVkPPPDAb06d
OmVI0vPPP5/TunXr0ocffvhIQkKCNTAw8NQPP/yQefvttxePGjXK44477ihyd3dXs2bNToWFhZ2U
JG9vb3P27NlZ/fr1a1VWVqaYmJjjzz777OGaYvLCCy8cfPrppy1/+MMfWn766ae7nT0OeeDAgYcj
IiLsUVFRx5cuXbp73LhxObfffru1vLxc9erVM6dPn77X29u7/LHHHgstLy83JGnChAn7JGnw4MFH
nnzyyZv+93//tzwpKSnNx8fnnBEr1cVx1qxZex955JGbrFZrYzc3N7355pt77rjjjpIBAwbk3XLL
LRGSNGjQoMO33XbbiYyMjHNG0NQUz5picb0jSQIAAAAAOKusrKzaxIzFYtGbb76ZI+mcaSQ9e/Ys
6tmz59nRComJiWcTHtu2bUurWk+zZs0cK1as2FV1/1NPPZUnKa9ie9y4cYfGjRt3qGK7d+/eRb17
9z6vvrFjxx4aO3bs2XKRkZGlpmmevY9169Ztr1z+nnvuKbrnnntSq9aTk5OzrfL2hg0bMipe/+Mf
/9hftXxls2bNOicuQ4cOLRg6dGhB1XIVi8JW9sgjjxx95JFHjlZX90033XTaWRxDQkIc//3vf89L
Ur3wwgsHX3jhhYOV94WHh5+qWDC2QnXx/DVjug0AAAAAAIAYSQIAAAAAgMtat25tO3Xq1DkDDhIT
E3e3bdv2RF3U371791bZ2dnnrA0yadKkfVUXy8XlQZIEAAAAAAAXbd26Nf1y1r9q1apq13jB5cd0
GwAAAAAAAJEkAQAAAAAAkESSBAAAAAAAQBJJEgAAAAAAAEks3AoAAAAAV68X/GLrtr7CjTUdbteu
nfVPf/pTbuUnqUyYMKFpRkaG1wcffLB3woQJTSdNmtR8//79WwICAsokafny5b4PPvhgq+Dg4FMV
50ydOjX73nvvLbqYJnbu3PnmxYsX75akuXPn+j/33HOHK64zbdq0wK+//nqHK/UsWLDAb8KECcHl
5eVyOBzGiBEjDv7v//7vkerK79+/3z0hIeHm06dPu/3jH//Yu3r1ap+pU6fmXsw9XIrly5f7enp6
lnfv3r3kQs/NyMjw+Prrr31GjBiRfzna9mvASBIAAAAAgCSpX79++QsWLPCvvG/x4sX+Dz30UL4k
LVq0yD8qKqrk/fffv6Fymbi4uOL09PTUip+LTZBI0po1a3Y0bty4LC8vz/LOO+80vZg6SktLjVGj
Rt20fPny7RkZGanJycmpd955Z41tWr58uW9ERMSJtLS01ISEhOLp06c3u7g7uDRfffWV79q1a30u
5tzt27d7fvzxx/61l6w7p0+fvpKXu+xIkgAAAAAAJEmDBg0q+Oqrr/xOnjxpSD+PTDh06FC9Hj16
FKekpHgeP37cMmHChJyFCxde1Bfx8ePHB06cOLGpJD322GMh7du3t0rS0qVLfXv37t1SkoKDg6MP
HDjgPnr06ObZ2dmeNpvNPnz48OaSVFJSYklISPhNy5YtI3v37t2yvLzc6XWOHj3q5nA4jMDAQIck
1a9f34yJiSmtuKf27dtbrVarPT4+3rp9+3aP9evX13/++eebr1y58gabzWYfOXJkcGlpqZvNZrP3
7t27ZUZGhkfLli0j+/btGxoaGhrVu3fvlp9++qnvLbfcYrvpppuivv76a29J+vrrr71/+9vf2iIi
Iuxt2rSxbdmyxVOSXnzxxab9+vULlaQNGzbUDwsLiywqKjrv+3hGRoZHYmJik9mzZwfabDb7F198
4bN//373Hj16tIqKioqIioqKWLlyZQNJWrFihY/NZrPbbDZ7RESEvaCgwG3s2LHBSUlJPjabzf7i
iy86TTAlJSV5RUdHR9hsNrvVarVv27bNU5LefPPNAKvVag8PD7ffe++9LauLlST17ds3dMCAAS1a
t25tGzlyZPNjx4659evXLzQ6OjoiIiLCXjWJdi0hSQIAAAAAkCQFBgaWxcTElCxatMhPkubNm+ff
q1evAjc3NyUmJjbq06dPfkJCQvHu3bu9srOzzy7fUPHFvOInJSXF01n9Xbp0KV63bp2PJG3evNm7
pKTEUlpaaqxZs8anU6dO54z0mDZt2r6QkJDS9PT01Dlz5uyTpLS0tPozZszI3rFjR8revXs9V61a
5XTERWBgYFn37t2PtmjRonWvXr1azpo1y7+srEySNHLkyBYDBw7My8zMTO3fv3/eyJEjQzp06HDi
z3/+8/5evXoVpKenp86aNSvH09OzPD09PXXp0qW7JSk7O9trzJgxB3fu3Jm8c+dOrw8++CAgKSkp
fdKkSfsmTZrUTJJiYmJO/vjjj+lpaWmpzz//fM6f/vSn5pI0bty4Q7t37/ZMTEy84X/+539CZ8yY
keXr63tehic8PPzU4MGDD48YMeJgenp6akJCQvHw4cNDnnnmmYPJyclpn3zyyc4RI0aEnolP0PTp
0/ekp6enfv/99+k+Pj7lkyZNyqkY1fP8888fchabN954o8njjz9+MD09PXXr1q1pLVu2PJWUlOT1
6quvNluzZk1mRkZG6pw5c/ZWF6uKeg4cOOCxadOm9Llz5+77y1/+0qxr167Htm3blrZ27dqMcePG
NT927Ng1mW+4JhsNAAAAALg87r///vyPP/64kSQtWbLEf9CgQflnXgcMHjw432Kx6O677y6YP39+
o4pzqk63iYyMLHVWd8eOHY9v27atQX5+vpunp6cZFxdXvHbtWu/vvvvOt1u3bsW1tS06OrqkVatW
py0WiyIjI4/v3LnTo7qyH3/88Z4vvvgiMy4urmT69OlB999/f6gk/fTTTw2GDRuWL0kjR47M37hx
o0tTW4KDg0vbtm17wmKxyGq1nujWrdsxNzc33XLLLcf37dvnKUn5+fmWu+++u1VYWFjkn/70p5DM
zEwvSbJYLEpMTNw9YsSIlvHx8UV33nmny+uNrFu3ruGoUaNa2Gw2e69evW4uLi62FBYWurVv3774
2WefDZk4cWLTI0eOWOrVq+dSffHx8SXTpk1rNnbs2KDt27d7+Pj4mP/5z38a9urVq6BZs2YO6eck
U22x+sMf/lDg7v5znmz16tUN//GPfzSz2Wz2jh07hpeWlho7duyo9t/masbCrQAAAACAswYMGHB0
7NixId9++633yZMn3Tp16nR8w4YN9ffs2eOZkJBglaTTp08bzZs3P/WXv/zl8IXU7enpaYaEhJTO
nDmzcdu2bYtjYmJOfPnll7579uzxbNOmzUlXzq94bbFY5HA4jJrKt23b9kTbtm1PDBs2LP/mm2+O
lpR1Ie2tzMPD4+y13dzc5OXlZVa0o6yszJCkMWPGBHfu3Llo1apVOzMyMjy6desWXnFOWlqal7e3
d3lubq5r2YwzTNPUpk2b0ry9vc3K+ydPnpx77733Fn722Wd+nTp1sq1YsWK7K/WNGDEiv1OnTiWf
fPKJX8+ePcPeeOONPRfSngo+Pj5nR8KYpqlFixbtqJjSdC1jJAkAAAAA4Cw/P7/y+Pj4oiFDhoT2
6dMnX5ISExP9R48evT8nJ2dbTk7OtkOHDm09ePBgvczMzAseLRAfH188Y8aMwC5duhTdcccdRfPm
zWtit9uPu7md+/XUz8+vrKSk5KK+sxYWFrotX77ct2L7hx9+qH/jjTeekqQ2bdqUzJ07t5EkzZkz
xz8uLs7pCBZ3d3eztLS0xiRMVceOHbM0b9781Jm6G1fsz8vLs4wePbrFV199lZ6fn+/+3nvvNaqu
Dl9f37KioiJLxXbHjh2PTZky5ez6IuvXr68vSSkpKZ5t27Y9MWnSpNzWrVuXJCcne/n5+ZUVFxdb
nNVbITU11SMiIqJ03Lhxh3r06HF08+bN9Xv06HFs2bJljXJzcy2SdPDgQYvkeqy6du16bNq0aYEV
a8SsW7eufq3BukoxkgQAAAAArla1PLL3cnnggQfyBw8e3GrBggW7JOnTTz/1X7Zs2TkjFe66666C
efPm+cfHx5dUrElScWzMmDEHHn300QJndXfu3Llo+vTpQd26dStp2LBhuaenp3nbbbed9+U7KCio
LDY2tjgsLCyyW7duhb169Sp0tf3l5eV65ZVXAp944ombvLy8yr29vcvfeeed3ZI0e/bsvYMHDw59
/fXXgwICAhyJiYlZzuoYOHDg4YiICHtUVNTxV155JceV644ZMyZ3yJAhLV9++eUbu3fvfrRi/4gR
I0KGDBlyqHXr1qXz5s3L6tatW/idd95ZFBwc7KhaR9++fY/ed999rf7973/f8Nprr+196623socM
GdLCarXay8rKjHbt2hV16NBh79/+9rem69evb2gYhhkeHn7ivvvuK3Rzc5PFYjHDw8PtAwYMOOJs
XZL333/ff+HChQHu7u5mkyZNTr/00ksHAgMDy0aPHn2gU6dONjc3NzMqKur44sWLs1yN1dSpU/cP
Gzashc1ms5eXlxshISGlrj6q+WpDkgQAAAAAcI5BgwYdHTRo0NkEzb59+7ZVLTN37tx9Fa+Lioo2
u1r3PffcU+RwODZVbGdlZSVXPp6Tk3P2WsuWLdtd+VjPnj3PLu6amJi4t7prNGrUqHzNmjVOv6Rb
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
nz5tNG/e/FRFksRVnp6eZkhISOnMmTMbt23btjgmJubEl19+6btnzx7PNm3a1LrYqaenp1nx2mKx
yOFwGLWdk56e7vHmm28Gbty4Ma1JkyZlffv2DT158uTZhIeb2//lPgzDMCXJNE1t2rQpzdvb23RS
pUvKysrk6+vrqBgJU9mHH36496uvvmqwdOlSv9jYWPvGjRvPK+PM5MmTc++9997Czz77zK9Tp062
FStWbL+YtlUkVKS6udfrCWuSAAAAXCGhz62o8QcArgZ+fn7l8fHxRUOGDAnt06dPviQlJib6jx49
en9OTs62nJycbYcOHdp68ODBepmZmS6N5KgsPj6+eMaMGYFdunQpuuOOO4rmzZvXxG63H6+crDjT
jrKSkpJL/s5aUFBgqV+/frm/v39Zdna2++rVq89ZHDUxMdFfkt55551Gbdq0KZGkjh07HpsyZcrZ
RWPXr1/v0mKsPj4+ZceOHXOTJH9///LmzZufevfddxtJUnl5ub777rv6kpSSkuLZrVu3ktdee21/
o0aNHLt27fJo2LBhWXFxcY33m5KS4tm2bdsTkyZNym3dunVJcnKyV48ePY69//77jYuKitwk6eDB
g5aAgICyhg0bln3xxRc+Z+4tID4+3um0pIu91+sVI0kAAAAA4CpV2yN7L5cHHnggf/Dgwa0WLFiw
S5I+/fRT/2XLlp0zauGuu+4qmDdvnn98fHxJ1TVJxowZc6BiXY6qOnfuXDR9+vSgbt26lTRs2LDc
09PTvO222877Ah8UFFQWGxtbHBYWFtmtW7fCXr16XdSjcePj409ERUUdb9WqVVSzZs1OxcbGnnOt
goICi9VqtXt4eJgfffTRLkl66623socMGdLCarXay8rKjHbt2hV16NCh1ulAAwcOzB85cmTo7Nmz
AxctWrRzwYIFu4YOHXrTyy+/3MzhcBh9+vTJj4+PP/H00083z8rK8jRN0+jYseOx9u3bn2jVqtWp
V199tZnNZrOPHj36wNChQ8+L39/+9rem69evb2gYhhkeHn7ivvvuK6xfv765adMm79/+9rcR9erV
M++4447CN998M+e9997bPXLkyJueeuoptxYtWpQuWLAgy1mbL/Zer1ckSQAAAAAA5xg0aNDRQYMG
nU3Q7Nu3b1vVMnPnzt1X8bqoqGizq3Xfc889RQ6HY1PFdlZWVnLl4zk5OWevtWzZst2Vj/Xs2fPs
4q41LXAqSRs2bMioeL148eIsZ2UqXSun8v5mzZo5VqxYsatq+aeeeipPUl5117zzzjtLdu7cec6i
p2vXrj1vSszKlSt3Vt0XGBhYVrGYanXmzZuX7Wz/5MmTcydPnpxbeV+HDh1ObNmyJb1q2cpxkaq/
118rl4YuGYaRYBhGhmEYOwzDeK6GcrcahuEwDOO+umsiAAAAAADA5VfrSBLDMCySZkjqLmmfpB8N
w1hqmmaqk3IvS1p5ORoKAAAAALg25ObmWrp06RJedf/q1aszgoKCyuryWt27d2+VnZ3tWXnfpEmT
9vXt2/dYXV6nsjFjxgR99tln/pX33XPPPfkvv/xybnXnXIjXX389YNasWYGV9916663F8+fP/9VO
g7lSXJlu01bSDtM0d0mSYRgfSbpHUtXVd5+UtFjSrXXaQgAAAADANSUoKKjM2VNdLodVq1adN3Xl
cnv55Zdz6yoh4syoUaPyRo0aVe20Hlw+rky3CZZUed7TvjP7zjIMI1hSH0mz6q5pAAAAAAAAV45h
mjU/CvnM+iIJpmkOObM9SFI70zSfqFTmX5Kmmab5vWEY/5S03DTNRU7qGiZpmCQFBgbGfvTRR5d8
A9tyal7gONptd43HJelw/WAdLqv58d6/ya39kdFekZG1lrkSaouJdOXicrXERLpycbmW3itS3cTl
evsMSfQtztC3OEff4hx9i3P0Leejb3GOvsW5661v6dq160bTNOMq79uyZUtWTEzMkUuuHEC1tmzZ
0jgmJibU2TFXkiTxkl4wTbPHme0/S5JpmlMqldktyTiz2VjScUnDTNP8tLp64+LizKSkpAu4DedC
n1tR4/EsrwG11jEzeopmFdc8CGbhFEet9USk17gQ8RVTW0ykKxeXqyUm0pWLy7X0XpHqJi7X22dI
om9xhr7FOfoW5+hbnKNvOR99i3P0Lc5db32LYRgkSYBfQE1JElfWJPlRUphhGC3182ORHpB0Ts9j
mmbLiteVRpJUmyABAAAAAAC42tS6Jolpmg5JT0j6j6Q0SQtN00wxDGOEYRgjLncDAQAAAODXKs0W
EVuXP7Vdr127dtbFixc3rLxvwoQJTQcOHNii4rWnp+cteXl5lorjy5cv9/X19f2tzWazV/x8+umn
vhd7z507d775yJEjliNHjlimTp3apPJ1unbterOr9bRt2zb8m2++8a6pTHBwcPSBAwdcGTwgSZo+
fXrA4MGDW1R3/JlnnrnRMIzY5OTks0/bmTBhQlPDMGIr2vLaa68FWK1Wu9VqtYeFhUW+//77N0hS
3759Q4ODg6MrYtimTRvbxbbjUlWN/YWaMGFC06KiIlfWQL3quNRo0zQ/N03TappmK9M0J53ZN9s0
zdlOyj7ibD0SAAAAAMDVrV+/fvkLFiw459G2ixcv9n/ooYfyJWnRokX+UVFRJRVf7CvExcUVp6en
p1b83HvvvUUX24Y1a9bsaNy4cVleXp7lnXfeaXqx9fxSwsLCTiQmJp6N4aeffup/8803n5SknTt3
1ps2bVqz7777LiMzMzM1KSkpLS4u7nhF2YkTJ+6riOFPP/2U/ku0X5IuNfZz5swJLC4uvmJJktOn
T9dZXddkZgcAAAAAUPcGDRpU8NVXX/mdPHnSkKSMjAyPQ4cO1evRo0dxSkqK5/Hjxy0TJkzIWbhw
oX9tdTkzfvz4wIkTJzaVpMceeyykffv2VklaunSpb+/evVtK/ze6Y/To0c2zs7M9bTabffjw4c0l
qaSkxJKQkPCbli1bRvbu3btleXm5S9cdOHBgi6ioqIibb7458umnn76x8rEXX3wxyGq12qOjoyMq
RoDs37/fvUePHq2ioqIioqKiIlauXNnA1Xu8++67j37++ec3SFJKSoqnr6+vo1GjRg5JOnDgQL0G
DRqU+/n5lUmSn59fuc1mO+Vq3c5kZGR4tG/f3mq1Wu3x8fHW7du3e0jSu+++2ygsLCwyPDzcHhcX
Fy5JSUlJXtHR0RE2m81utVrt27Zt83RWp7PYjx8/PjAqKirCarXaK2J47Ngxty5dutwcHh5uDwsL
i3z77bcbTZw4semhQ4fqde7c2dquXTurs/odDof69u0bGhYWFmm1Wu0vvvhiU0lKTk727NChgzU8
PNxut9sjUlJSPMvLyzV8+PDmFWXffvvtRtLPI4tiY2PDu3XrdnNYWFiUJM2cOdO/4v4GDBhwk8NR
+/pCVZEkAQAAAABIkgIDA8tiYmJKFi1a5CdJ8+bN8+/Vq1eBm5ubEhMTG/Xp0yc/ISGhePfu3V7Z
2dlnp6kkJSX5VJ5uk5KS4vTLd5cuXYrXrVvnI0mbN2/2LikpsZSWlhpr1qzx6dSp0zmjT6ZNm7Yv
JCSkND09PXXOnDn7JCktLa3+jBkzsnfs2JGyd+9ez1WrVvm4cl9///vfc5KTk9PS09NT1q1b5/vD
Dz/Urzjm5+fnyMzMTB0+fPihJ598MkSShg8fHvLMM88cTE5OTvvkk092jhgxItTVGDZs2LDsxhtv
PPXjjz96JSYmNrrvvvsKKo61b9/+eOPGjU+HhIRE33fffaEffvihX+Vzx40b17wihhVJo9qMHDmy
xcCBA/MyMzNT+/fvnzdy5MgQSZo6dWqzlStXZmZkZKR+8cUXOyTpjTfeaPL4448fTE9PT926dWta
y5YtnSZoqsZ+yZIlDXfs2OG1devWtLS0tNTNmzd7//vf//ZZsmRJw6CgoNMZGRmp27dvT/nDH/5w
bNy4cYeaNm16es2aNZk//PBDprP6v/vuO+8DBw7U2759e0pmZmbq//t//y9PkgYMGNByxIgRhzIy
MlKTkpLSW7RocToxMfGGbdu21U9LS0v573//m/nXv/61+Z49e+pJUmpqqvfMmTP3ZmVlJW/atMlr
0aJF/klJSenp6empbm5u5uzZswNciWFlJEkAAAAAAGfdf//9+R9//HEjSVqyZIn/oEGD8s+8Dhg8
eHC+xWLR3XffXTB//vxGFedUnW4TGRlZ6qzujh07Ht+2bVuD/Px8N09PTzMuLq547dq13t99951v
t27dimtrW3R0dEmrVq1OWywWRUZGHt+5c6eHK/c0b948f7vdHmG32+3bt2/32rJli1fFsYcffjhf
koYOHZr/008/+UjSunXrGo4aNaqFzWaz9+rV6+bi4mJLYWGhy9+f77///vz58+f7r1ixotHAgQPP
Jknc3d31zTffbP/www93hoWFnXzuuedCnnnmmbMjWypPt1m6dGntz/mW9NNPPzUYNmxYviSNHDky
f+PGjT7Sz/8mAwcODJ02bVrjihEV8fHxJdOmTWs2duzYoO3bt3v4+PjU/rxrSV988UXDb775pqHd
brdHRkbad+7c6ZWenu51yy23nFi7dm3DkSNHBn/xxRc+AQEBZa7UZ7PZSrOzsz0ffvjhkEWLFjVs
1KhRWUFBgdvBgwc9Bg8efFSSvL29TV9f3/K1a9f63n///fnu7u4KCQlxtGvXrvjbb7/1lqTWrVuX
VIzE+eKLL3yTk5O9Y2JiImw2m/3bb79tuGvXLqfJupqQJAEAAAAAnDVgwICj69ata/jtt996nzx5
0q1Tp07HN2zYUH/Pnj2eCQkJ1uDg4OilS5f6L1q06IL/Su/p6WmGhISUzpw5s3Hbtm2Lf/e73xV/
+eWXvnv27PFs06bNSVfOr3htsVjkcDiM2s5JT0/3ePPNNwPXrFmTmZmZmdqtW7fCkydPnv0u7Ob2
f1+LDcMwJck0TW3atCmtImFx6NChrX5+fq7N7ZHUv3//wkWLFgUEBwef8vf3P+c8Nzc3de3a9fiU
KVNy33///V3Lly+/obp6LsWHH364d+LEifuzs7M9YmNj7bm5uZYRI0bkf/bZZzvq169f3rNnz7Cl
S5e6tMCuaZr64x//eKAiHnv37k1++umnj7Ru3bp006ZNqdHR0SfGjx8f/OyzzzZzpb4mTZqUJScn
p3bt2rVo9uzZTR544IHQi7lHb2/vs7E1TdPo169fXkUbs7Kykv/+97/vv9A6SZIAAAAAAM7y8/Mr
j4+PLxoyZEhonz598iUpMTHRf/To0ftzcnK25eTkbDt06NDWgwcP1svMzHRpJEdl8fHxxTNmzAjs
0qVL0R133FE0b968Jna7/XjlZMWZdpSVlJRc8nfWgoICS/369cv9/f3LsrOz3VevXn3OFJeKRVbf
eeedRm3atCmRpI4dOx6bMmXK2YVL169fX18XwNfXt/yFF17YN378+AOV92dlZdWrGAUhSUlJSd7B
wcGXtCZJmzZtSubOndtIkubMmeMfFxdXLP28Hkq3bt1KXnvttf2NGjVy7Nq1yyM1NdUjIiKidNy4
cYd69OhxdPPmzU7vq2rs77rrrmPz589vXDGaZvfu3fVycnLcs7Ky6vn6+pY//vjj+c8880zu5s2b
vSWpQYMGZTWNvDlw4IB7WVmZHnnkkaNTpkzJ2bZtm3ejRo3Kg4KCTs2fP/8GSTpx4oRRVFTk9rvf
/a5o0aJF/g6HQ/v373ffsGGDT6dOnUqq1pmQkHBs+fLljXJyctwl6eDBg5aLeX+6/KgjAAAAAMCV
FZGetvGXuO4DDzyQP3jw4FYLFizYJf38hJZly5Ztr1zmrrvuKpg3b55/fHx8ScWaJBXHxowZc+DR
Rx8tqFqvJHXu3Llo+vTpQd26dStp2LBhuaenp3nbbbedN9UmKCioLDY2tjgsLCyyW7duhb169Sq8
mHuJj48/ERUVdbxVq1ZRzZo1OxUbG3vOtQoKCixWq9Xu4eFhfvTRR7sk6a233soeMmRIC6vVai8r
KzPatWtX1KFDh70Xct1hw4add/+nTp0ynn322eYHDx6s5+npafr7+59+++23z9Y7bty45i+//PLZ
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
"
>
</div>

</div>

</div>
</div>

</div></section></section>
</div>
</div>

<script>

require(
    {
      // it makes sense to wait a little bit when you are loading
      // reveal from a cdn in a slow connection environment
      waitSeconds: 15
    },
    [
      "reveal.js/lib/js/head.min.js",
      "reveal.js/js/reveal.js"
    ],

    function(head, Reveal){

        // Full list of configuration options available here: https://github.com/hakimel/reveal.js#configuration
        Reveal.initialize({
            controls: true,
            progress: true,
            history: true,

            theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
            transition: Reveal.getQueryHash().transition || 'linear', // default/cube/page/concave/zoom/linear/none

            // Optional libraries used to extend on reveal.js
            dependencies: [
                { src: "reveal.js/lib/js/classList.js",
                  condition: function() { return !document.body.classList; } },
                { src: "reveal.js/plugin/notes/notes.js",
                  async: true,
                  condition: function() { return !!document.body.classList; } }
            ]
        });

        var update = function(event){
          if(MathJax.Hub.getAllJax(Reveal.getCurrentSlide())){
            MathJax.Hub.Rerender(Reveal.getCurrentSlide());
          }
        };

        Reveal.addEventListener('slidechanged', update);

        var update_scroll = function(event){
          $(".reveal").scrollTop(0);
        };

        Reveal.addEventListener('slidechanged', update_scroll);

    }
);
</script>

</body>


</html>
